0

我正在使用 UISlider,其最小和最大图像设置如下,

UIImage *stetchLeftTrack = [[UIImage imageNamed:@"Left.png"] stretchableImageWithLeftCapWidth:14.0 topCapHeight:0.0];
[self._timeSlider setMinimumTrackImage:stetchLeftTrack forState:UIControlStateNormal];

UIImage *stetchRightTrack = [[UIImage imageNamed:@"Right.png"] stretchableImageWithLeftCapWidth:14.0 topCapHeight:0.0];
[self._timeSlider setMaximumTrackImage:stetchRightTrack forState:UIControlStateNormal];

使用最小图像的最大图像

一切都按预期工作,直到滑块按钮超过最大值的大约 60%。正如您在屏幕截图中看到的那样,最小和最大滑块图像都设置为最小图像(Left.png)。

请帮助提前谢谢!!!!

4

2 回答 2

1

事实上,我认为问题的根源是不同的,因此您的解决方案有效。

我遇到了同样的问题,当再次阅读轨道图像的文档时,我注意到可拉伸图像必须使得中间(可拉伸)部分必须是 1 像素宽(视网膜 2 像素)。我的轨道图像被定义为滑块的完整宽度,左右大写为 20 像素,中间部分为 230 像素......

当我将可跟踪图像更改为 41 像素(左侧 20 像素,中间可拉伸 1 像素,右侧 20 像素)并将 cap insets 设置为 时UIEdgeInsetsMake(0, 20, 0, 20),一切正常。

于 2013-12-13T09:24:31.683 回答
0

这有点奇怪,但最后我想通了..

我的 Left.png 大小为 20x6(绿色), Right.png 大小为 84x8(白色)

我将 Right.png 大小更改为 20x8 这解决了我的问题

于 2013-10-24T06:47:16.683 回答