1

我有一个自定义 UISlider,但在 iOS 6 中,setMinimumTrackImage 存在问题,可以看出它被调整大小而不是像 iOS 5 和 4 那样被剪裁。

我尝试stretchableImageWithLeftCapWidth: 20 topCapHeight: 0];在创建图像时添加可拉伸图像,但结果更糟,或多或少当拇指按钮达到 LeftCapWidth 大小时,图像从 MinimumTrackImage 切换到
MaximumTrackImage。我找到的解决方案是对 MinimumTrackImage 使用透明 png,将实际 MinimumTrackImage 用作 bgcolor。

我想知道其他人是否遇到过这个问题,以及他是否有适当的方法来解决它。提前致谢。

代码:

maxImage=[UIImage imageWithContentsOfFile:[[NSBundle mainBundle] pathForResource:maxImageName ofType:@"png"]];
minImage=[UIImage imageWithContentsOfFile:[[NSBundle mainBundle] pathForResource:minImageName ofType:@"png"]];

[_scaleSlider setMinimumTrackImage:minImage forState:UIControlStateNormal];
[_scaleSlider setMaximumTrackImage:maxImage forState:UIControlStateNormal];

滑块的屏幕截图

4

1 回答 1

1

使用 resizableImageWithCapInsets:<#(UIEdgeInsets)#> 代替 stretchableImageWithLeftCapWidth:<#(NSInteger)#> topCapHeight:<#(NSInteger)#>
它将解决您的问题

于 2013-03-07T08:02:21.927 回答