Iphone 定制iSlider IOS 6

Iphone 定制iSlider IOS 6,iphone,objective-c,ios,uislider,ios6,Iphone,Objective C,Ios,Uislider,Ios6,所以我有一段代码创建了一个定制的UISlider。它在IOS 6之前工作正常。在IOS 6中,不显示图像,而是显示默认滑块。有人能解释一下为什么会这样吗 [sliderFPS setMinimumTrackImage:[[UIImage imageNamed:@"camera_slider_empty.png"] stretchableImageWithLeftCapWidth:8 topCapHeight:0] forState:UIControl

所以我有一段代码创建了一个定制的UISlider。它在IOS 6之前工作正常。在IOS 6中,不显示图像,而是显示默认滑块。有人能解释一下为什么会这样吗

[sliderFPS setMinimumTrackImage:[[UIImage imageNamed:@"camera_slider_empty.png"] stretchableImageWithLeftCapWidth:8 topCapHeight:0]
                       forState:UIControlStateNormal];
[sliderFPS setMaximumTrackImage:[[UIImage imageNamed:@"camera_slider_full.png"] stretchableImageWithLeftCapWidth:8 topCapHeight:0]
                       forState:UIControlStateNormal];

[sliderFPS setThumbImage:[UIImage imageNamed:@"camera_fps_slider_button"]      
                forState:UIControlStateNormal];

StretcableImageWithLeftCapWidth:topCapHeight:
在iOS 5中被弃用,请改用
ResizeableImageWithCapInsets:
我希望这会有所帮助

因为下面的方法在iOS 5中不推荐使用

 - (UIImage *)stretchableImageWithLeftCapWidth:(NSInteger)leftCapWidth topCapHeight:(NSInteger)topCapHeight 
根据您的代码,使用这一行而不是前两行

[sliderFPS setMinimumTrackImage:[[UIImage imageNamed:@"camera_slider_empty.png"] resizableImageWithCapInsets:UIEdgeInsetsFromString(@"8")]
                       forState:UIControlStateNormal];
[sliderFPS setMaximumTrackImage:[[UIImage imageNamed:@"camera_slider_full.png"] resizableImageWithCapInsets:UIEdgeInsetsFromString(@"8")]
                       forState:UIControlStateNormal];

不推荐并不意味着它不可用或不可用。这意味着它被一个更新的方法所取代,您应该转换(但不是必须)到这个方法,因为它在不久的将来将不再可用。在iOS 6中是否完全删除了它?它应该(为我返回一个图像)在iOS 6中仍然可以工作,但不应该依赖,并且考虑到这是iOS 6中的一个变化,可能行为并不总是相同的,您应该在提交新版本之前更改代码,但我不相信这是滑块不再工作的原因…很可能这不是原因,这只是我从代码中看到的唯一可能的问题。谢谢我接受了巴普的回复,因为他是第一个发布它的人。