Tôi muốn sử dụng hình ảnh cho bản theo dõi UISlider. Tôi không muốn một màu ở bên trái của ngón cái, và một màu khác ở bên phải. Tôi chỉ muốn một hình ảnh tĩnh trên toàn bộ bản nhạc. Khả thi?iOS - hình ảnh tùy chỉnh cho UISlider
Trả lời
Đối với thiết lập các hình ảnh để trượt của bạn, bạn có thể sử dụng setMinimumTrackImage, setMaximumTrackImage phương pháp. Đối với yêu cầu của bạn đặt cả hai cùng một hình ảnh.
iOS 5 trở xuống
UIImage *sliderTrackImage = [[UIImage imageNamed: @"Slider.png"] stretchableImageWithLeftCapWidth: 7 topCapHeight: 0];
[mySlider setMinimumTrackImage: sliderTrackImage forState: UIControlStateNormal];
[mySlider setMaximumTrackImage: sliderTrackImage forState: UIControlStateNormal];
iOS 5+
UIImage *sliderTrackImage = [[UIImage imageNamed:@"Slider.png"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, 7, 0, 0)];
[mySlider setMinimumTrackImage: sliderTrackImage forState: UIControlStateNormal];
[mySlider setMaximumTrackImage: sliderTrackImage forState: UIControlStateNormal];
Để biết thêm xin vui lòng kiểm tra các liên kết:
Chỉ cần đặt cả hai mặt cho cùng một hình ảnh. Bạn có thể muốn tạo hai hình ảnh riêng biệt với cùng một màu/mẫu nếu bạn muốn các góc được làm tròn ở đầu.
[[UISlider appearance] setThumbImage:[UIImage imageNamed:@"ball.png"] forState:UIControlStateNormal];
[slider setMinimumTrackImage:[[UIImage imageNamed:@"volume_slider_oragne.png"] stretchableImageWithLeftCapWidth:0.3 topCapHeight:0.0] forState:UIControlStateNormal];
[slider setMaximumTrackImage:[[UIImage imageNamed:@"volume_strap_gry.png"] stretchableImageWithLeftCapWidth:0.3 topCapHeight:0.0] forState:UIControlStateNormal];
[[UISlider appearance] setThumbImage: [UIImage imageNamed: @ "ball.png"] forState: UIControlStateHighlighted]; để tránh ngón tay cái không quay trở lại hình ảnh ban đầu của nó khi trượt. –
Cảm ơn. Những công việc này. Tôi không cần nó để có thể căng ra vì vậy tôi chỉ sử dụng imageNamed. – soleil
cảm ơn nhận xét của bạn :) –
'stretchableImageWithLeftCapWidth: topCapHeight:' không được chấp nhận. Thay thế nó bằng 'resizableImageWithCapInsets: UIEdgeInsetsMake (0, 7, 0, 7) thay đổi kích thướcMode: UIImageResizingModeStretch'. –