iOS-iPhone:UISlider跟踪图像随机消失

iOS-iPhone:UISlider跟踪图像随机消失,iphone,ios,image,customization,uislider,Iphone,Ios,Image,Customization,Uislider,我有一个定制的UISlider,它的轨迹图像有时会消失。它是随机发生的,当其父视图控制器被推到可见时(我从未看到它实际上消失) 以下是我设置UISlider的代码: timeSlider = [[UISlider alloc] initWithFrame:CGRectMake(55, 8, 210, 23)]; timeSlider.backgroundColor = [UIColor clearColor]; UIImage *blutrackImg = [[UIImage alloc]

我有一个定制的UISlider,它的轨迹图像有时会消失。它是随机发生的,当其父视图控制器被推到可见时(我从未看到它实际上消失)

以下是我设置UISlider的代码:

timeSlider = [[UISlider alloc] initWithFrame:CGRectMake(55, 8, 210, 23)];
timeSlider.backgroundColor = [UIColor clearColor]; 

UIImage *blutrackImg = [[UIImage alloc] initWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"bluetrack" ofType:@"png"]];
UIImage *whitetrackImg = [[UIImage alloc] initWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"whitetrack" ofType:@"png"]];

//UIEdgeInsetsMake(top,left,bottom,right)
UIImage *stetchLeftTrack = [blutrackImg stretchableImageWithLeftCapWidth:9.0 topCapHeight:0.0]; 
UIImage *stetchRightTrack = [whitetrackImg stretchableImageWithLeftCapWidth:9.0 topCapHeight:0.0];
[timeSlider setThumbImage: [UIImage imageNamed:@"whiteslide2.png"] forState:UIControlStateNormal];
[timeSlider setMinimumTrackImage:stetchLeftTrack forState:UIControlStateNormal];
[timeSlider setMaximumTrackImage:stetchRightTrack forState:UIControlStateNormal];

timeSlider.continuous = NO;
[timeSlider addTarget:self action:@selector(trackTime:) forControlEvents:UIControlEventValueChanged];
[self.view addSubview:timeSlider];

我正在构建iOS 5.0。有人遇到过这样的事情吗?

解决方案发现:我相信这个问题是由以下错误引起的:

我有一个计时器,它使用slider.value属性而不是[slider setValue:animated:]方法设置滑块的值。我也没有检查正在设置的值是否正常

解决这些问题已经解决了问题。

我支持“答案”,并想特别指出关于检查值是否正确的一点。我认为使用slider.value或[slider setValue]并不重要,将其设置为NaN意味着iOS5中的背景消失


注意:获取NaN作为返回值如果您使用iPod库并询问当前位置,这可能会经常发生。

我也遇到同样的问题,这是由重复资源造成的。在构建阶段检查它,如果它是xCode中的重命名资源。

NaN也是我的问题,但比我预期的更糟。。。即使在iOS5上将UISlider设置为NAN一次,似乎也会永远中断该控件的实例是令人惊讶的,并且需要花费一点时间来跟踪。

这也正是我的问题,与其说是设置值的问题,不如说是设置值的问题。非常感谢。正如DreamTimeStudioZ在下面提到的,主要问题是健全性检查,而不是设置值。非常感谢您发布您的解决方案:)