带图像的UIPageViewController使应用程序崩溃

时间:2012-10-30 11:50:24

标签: objective-c uipageviewcontroller

我使用过UIPageViewController 我想显示24页,每页不是文本的图像 在contentview控制器中我使用此代码

 self.imgView.image=nil;
 self.imgView.image= [UIImage imageNamed:[NSString  stringWithFormat:@"image%d.jpg",index+1]];

 if(self.categoryId==3 ||self.categoryId==4)
 {
     self.imgView.contentMode=UIViewContentModeScaleToFill;
 }
 else
 {
     self.imgView.contentMode=UIViewContentModeScaleAspectFit;
 }

但问题是当我运行应用程序并翻页时 在17或18页之后,它给了我一个内存警告,我的应用程序崩溃了

1 个答案:

答案 0 :(得分:1)

您可以尝试使用:

NSString* imgFile = [NSString  stringWithFormat:@"image%d",index+1];
NSString* pathToImageFile = [[NSBundle mainBundle] pathForResource:imgFile ofType:@"jpg"];
self.imgView.image = [UIImage imageWithContentsOfFile:pathToImageFile];

确实,imageNamed会缓存您通过它加载的所有图像。缓存越来越大,它可以防止内存被正确释放。