自定义UISlider图像卡住

时间:2013-09-26 17:44:48

标签: ios ios7 uislider

为什么滑块图像会粘在它上面?

这是我的代码:

for (UISlider *slider in volumeSlider.subviews) {
    if ([slider isKindOfClass:[UISlider class]]) {
        [slider setMinimumTrackImage:[[UIImage imageNamed:@"sliderMax.png"] stretchableImageWithLeftCapWidth:10.0 topCapHeight:0.0] forState:UIControlStateNormal ];
        [slider setMaximumTrackImage:[[UIImage imageNamed:@"sliderMin.png"] stretchableImageWithLeftCapWidth:10.0 topCapHeight:0.0] forState:UIControlStateNormal ];
        [slider setThumbImage:[UIImage imageNamed:@"thumbSlider.png"] forState:UIControlStateNormal];
    }
}

enter image description here

2 个答案:

答案 0 :(得分:1)

好的,这就是我找到的!要解决此问题,请在viewdidload方法的最顶部(或基本上在对滑块进行任何其他操作之前)对滑块进行外观处理。

执行此操作后,我发现我的自定义滑块表现得如此! (在iOS 7.0.2上测试)。

答案 1 :(得分:0)

我有同样的情况,坚持在赛道的右端。这很烦人。但我解决了这段代码的问题:

- (CGRect)trackRectForBounds:(CGRect)bounds {
    return (CGRect) {0,0, bounds.size.width, bounds.size.height};
}

(我的自定义曲目与滑块视图的大小相同)