1

24ページを表示したいUIPageViewControllerを使用しましたが、各ページはテキストではなく、このコードを使用する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 ページの後にページをめくると、メモリ警告が表示され、アプリがクラッシュすることです。

4

1 に答える 1

1

あなたは試して使うことができます:

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

実際、imageNamedロードしたすべての画像をキャッシュします。キャッシュがどんどん大きくなり、メモリが適切に解放されなくなります。

于 2012-10-30T12:24:28.167 に答える