iOS版 - 为UISlider自定义图片(iOS - custom image for UISli

2019-07-30 06:49发布

我想用一个形象的UISlider轨道。 我不想在拇指左侧一个颜色,并在右边另一种颜色。 我只是想在整个跟踪一个静态图像。 可能?

Answer 1:

对于图像设置为您的滑块就可以使用setMinimumTrackImage,setMaximumTrackImage方法。 对于您的要求都设置为相同的图像。

iOS 5以下

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];

欲了解更多请查看以下链接:

  1. 用户界面定制教程
  2. http://jasonlawton.com/blog/customizing-uislider-in-iphone/
  3. 自定义UISlider
  4. 滑块图像


Answer 2:

[[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];


Answer 3:

只要设定双方相同的图像。 你可能想使用相同的颜色/图案两个独立的图像,如果你想在两端的圆角。



文章来源: iOS - custom image for UISlider