如何移除 UISlider 的预填充
Posted
技术标签:
【中文标题】如何移除 UISlider 的预填充【英文标题】:How To Remove pre - Fill of UISlider 【发布时间】:2013-12-27 07:24:36 【问题描述】:如果 UISlider. 其他一切正常,除了当滑块拇指处于其最小位置时,它根本不应该显示最小轨道图像。
我的 iPad 模拟器的屏幕截图如下:-
在这张图片中,拇指旋钮处于其最小位置,但它仍然显示不应该的“绿色最小轨道图像”
有什么办法可以解决这个问题吗?
我的 viewDidLoad 方法中的代码是:-
SLDR.continuous=NO;
[SLDR setMinimumTrackImage:[[UIImage imageNamed:@"U14.png"] stretchableImageWithLeftCapWidth:7 topCapHeight:0]forState:UIControlStateNormal];
[SLDR setMaximumTrackImage:[[UIImage imageNamed:@"U31.png"] stretchableImageWithLeftCapWidth:0 topCapHeight:0] forState:UIControlStateNormal];
[SLDR setThumbImage:[UIImage imageNamed:@"U9.png"] forState:UIControlStateNormal];
[SLDR setThumbImage:[UIImage imageNamed:@"U9.png"] forState:UIControlStateHighlighted];
请告诉我我错过了什么,提前谢谢:)
【问题讨论】:
【参考方案1】:标准滑块 thumbImage 位于滑块顶部,因此它覆盖了最小位置。你的在上面,所以末端暴露了。尝试通过水平翻转最大图像来创建新图像。然后像这样向滑块添加一个 valueCahnged...
- (IBAction)sliderValueChanged:(id)sender
if (SLDR.value == 0)
[SLDR setMinimumTrackImage:[[UIImage imageNamed:@"U31-flipped.png"] stretchableImageWithLeftCapWidth:5 topCapHeight:0]forState:UIControlStateNormal];
else
[SLDR setMinimumTrackImage:[[UIImage imageNamed:@"U14.png"] stretchableImageWithLeftCapWidth:5 topCapHeight:0]forState:UIControlStateNormal];
希望这会有所帮助!
【讨论】:
以上是关于如何移除 UISlider 的预填充的主要内容,如果未能解决你的问题,请参考以下文章