我注意到iOS7中的UISlider与iOS 6和iOS 5中的UISlider行为不同:
假设您有一个min = 0和max = 10的滑块,当前值为0.当您第一次触摸"旋钮"时,将发送一个valueChanged消息,其中slider.value = 0.269(而不是预期的0)并且旋钮移动走向中间.通常,触摸滑块将其移向中间值(在此示例中为5),距离当前中间越远,移动的越多.
所有这一切都没有发生在iOS6中,我想恢复旧的行为,但不知道如何实现这一点.
Ger*_*eon 16
Apple尚未对我的错误报告发表评论,但我偶然发现了一个或多或少的解决方案:为旋钮安装自定义图像可恢复iOS 6中的行为:
[self.slider setThumbImage:[UIImage imageNamed:@"knob"] forState:UIControlStateNormal];
Run Code Online (Sandbox Code Playgroud)
在iOS 9上,您需要设置.Normal,.Selected和.Highlighted状态才能工作.经过5小时的挣扎,我发现了这一点.去Apple的路!
[_sliderView setThumbImage:[UIImage imageNamed:@"knob"] forState:UIControlStateNormal];
[_sliderView setThumbImage:[UIImage imageNamed:@"knob"] forState:UIControlStateSelected];
[_sliderView setThumbImage:[UIImage imageNamed:@"knob"] forState:UIControlStateHighlighted];
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1651 次 |
| 最近记录: |