iOS 7如果声明分配UIImage不起作用

时间:2013-12-01 06:33:31

标签: ios iphone ios7 uiimage uislider

因此,我正在更新我们的应用程序以更多地准备iOS 7,并且之前正在运行的代码的一部分不再起作用。在本节中,我使用UISlider作为垂直条形图,我有自己的PNG,我想用于Max和Min Track图像但是对于Min Track Image,我有一个if语句将选择绿色或红色图像,但由于某种原因,UIImage总是返回null。这是该部分的片段(基本上只是图片中的部分),我不知道是什么导致它不起作用。当我删除I​​f语句并且只分配红色或绿色图像时它工作正常,所以我知道它需要改变的东西我似乎无法找到需要改变的东西。

//Setup Images for Slider/Bar Graph
UIImage *whiteImage = [[UIImage imageNamed:@"whiteButton"] resizableImageWithCapInsets:UIEdgeInsetsMake(18, 18, 18, 18)];
UIImage *greenImage = [[UIImage imageNamed:@"greenButton"] resizableImageWithCapInsets:UIEdgeInsetsMake(18, 18, 18, 18)];
UIImage *redImage = [[UIImage imageNamed:@"redButton"] resizableImageWithCapInsets:UIEdgeInsetsMake(18, 18, 18, 18)];
UIImage *blankButton = [UIImage imageNamed:@"blankButton"];
//Check to see which image should be used for the Min Track
UIImage *trackImage = [UIImage new];
if ([self.foundMTDValue doubleValue] >= currentDayGoal) 
{
     trackImage = greenImage;
}
else {
     trackImage = redImage;
}
 NSLog(@"track image = %@", trackImage);
        //Setup Main Slider
[sliderCell.mainSlider setMinimumTrackImage:trackImage forState:UIControlStateNormal];
[sliderCell.mainSlider setMaximumTrackImage:whiteImage forState:UIControlStateNormal];
[sliderCell.mainSlider setThumbImage:blankButton forState:UIControlStateNormal];
[sliderCell.mainSlider setMinimumValue:0];
[sliderCell.mainSlider setMaximumValue:mtdGoal];
[sliderCell.mainSlider setValue:[self.foundMTDValue doubleValue]];

1 个答案:

答案 0 :(得分:0)

没关系,我发现了这个问题。看起来我的资产目录中的图像名称搞砸了,这就是红色图像总是返回null的原因。修正了它,现在一切正常。