記憶に問題があります。ARCを使用しています。ビューの UIImageView に .jpg をロードしています。
Code showing example situation:
//.h file
@interface myClass : UIViewController
{
IBOutlet UIImageView * back;
}
// don' t have @property
// back is connected in .xib
//.m file
-(void) viewDidLoad {
UIImage * myImg =[UIImage imageNamed:imgName];
back.image=myImg;
}
-(void) returnToPrevoriousView {
[self removeFromSuperview];
back.image = nil;
}
問題は、私が他のビューからこのビューに来て、imgName が多くの値を持つことができることです。たとえば、myClass に 6 回アクセスすると、ログが記録されます:メモリの警告が表示され、アプリがクラッシュします。
myImg がメモリから解放されていないと思いますか? 私はそれを修正する方法がわかりませんか?JPG は約 100kb あります。
PS。.png をロードすると、通常 600kB の .png 画像にもかかわらず、動作します (同様に高速です)。しかし、私はそれがまだメモリを解放していないと思いますか?