0

我正在开发 UISlider,在其中我在滑块上添加了一个 Thumb 图像 (slider_iphone.png 53 X 199)。没有视网膜图像但问题是当我添加视网膜图像(slider_iphone@2x.png 106 X 398)时,拇指图像变得比简单图像更宽更长。有视网膜

我在谷歌和堆栈溢出上搜索了很多,但没有找到任何解决方案。为什么它没有在正确的帧中拍摄视网膜图像。请提出任何解决方案。

代码:

slider = [[UISlider alloc]initWithFrame:CGRectMake(0.0,180.0,320.0,180.0)];

[slider setMinimumValue:1.0f];

[slider setMaximumValue:10.0f];

[slider addTarget:self action:@selector(sliderMoved:) forControlEvents:UIControlEventValueChanged];

UIImage *sliderTrackImage1 = [[UIImage imageNamed: @"button-transparent.png"] stretchableImageWithLeftCapWidth: 0.0 topCapHeight: 0.0];

UIImage *thumb = [UIImage imageNamed:@"slider_iphone@2x.png"];

[slider setMinimumTrackImage: sliderTrackImage1 forState: UIControlStateNormal];
[slider setMaximumTrackImage: sliderTrackImage1 forState: UIControlStateNormal];
[slider setThumbImage:thumb forState:UIControlStateHighlighted];
[slider setThumbImage:thumb forState:UIControlStateNormal];
4

2 回答 2

2

No need to add @2x just use this like :

[self.slider setThumbImage:[UIImage imageNamed:@"n.png"] forState:UIControlStateNormal];
于 2013-05-20T13:15:26.507 回答
2

您不应该使用代码中定义的@2x 图像!

在你的包中同时拥有普通图像和@2x 图像,并在代码中指定普通图像!

该应用程序将根据设备的屏幕适当地选择它需要的图像。

于 2013-05-20T12:19:03.280 回答