UISlider的轨迹图像无法在iOS 3.2+上展开

时间:2010-08-26 04:04:16

标签: iphone uikit

我有一个UISlider子类,应该实现自定义外观。我用可伸缩的图像做这个:

UIImage*    sliderBar = [UIImage imageNamed: @"SliderLeft.png"];
UIImage*    sliderLeft = [sliderBar stretchableImageWithLeftCapWidth: 7 topCapHeight: 0];
sliderBar = [UIImage imageNamed: @"SliderRight.png"];
UIImage*    sliderRight = [sliderBar stretchableImageWithLeftCapWidth: 1 topCapHeight: 0];
UIImage*    sliderRing = [UIImage imageNamed: @"SliderRing.png"];
UIImage*    sliderRingH = [UIImage imageNamed: @"SliderRing-Highlighted.png"];

[self setMinimumTrackImage: sliderLeft forState: UIControlStateNormal];
[self setMaximumTrackImage: sliderRight forState: UIControlStateNormal];
[self setThumbImage: sliderRing forState: UIControlStateNormal];
[self setThumbImage: sliderRingH forState: UIControlStateHighlighted];

这在运行3.1.3的设备上运行正常。但是,在iPad(3.2.x)或iOS 4.x设备上,看起来它正在拉伸最右边的像素,并且从不绘制端盖。

SliderLeft.png是8像素宽(没有右端盖),SliderRight.png是11像素。

我没有看到UIImage或UISlider中的任何内容发生了变化。

这里有任何已知的陷阱吗?就像我说的那样,当我写这篇文章的时候一切正常,但是较新的操作系统似乎打破了它。

0 个答案:

没有答案