私は私のviewController
でUIImagePicker
を使用していますためUIImagePickerでは常に、時にカメラ
をメモリの警告を取得し、2、私は常にメモリの警告を取得する方法の種類だけでなく、非常に有名な「wait_fencesがあります:返信を受け取れませんでした:10004003 "、
警告を促す特定のコード行をトレースすることはできません。いつも私がデバッグできないこれらのメソッドの直後に来ます。
// in myViewController.h
// the first 2 are the methods that I alloc my UIImagePicker,
// here, self.photoPicker is a retained property of UIImagePicker.
- (IBAction)fromAlbumButtonTapped {
if (self.photoPicker == nil) {
self.photoPicker = [[[UIImagePickerController alloc] init] autorelease];
self.photoPicker.delegate = self;
}
if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypePhotoLibrary]) {
self.photoPicker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
[self presentModalViewController:self.photoPicker animated:YES];
return;
}
}
- (IBAction)fromCameraButtonTapped {
if (self.photoPicker == nil) {
self.photoPicker = [[[UIImagePickerController alloc] init] autorelease];
self.photoPicker.delegate = self;
}
if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera]) {
self.photoPicker.sourceType = UIImagePickerControllerSourceTypeCamera;
[self presentModalViewController:self.photoPicker animated:YES];
return;
}
}
// and this is another part that gives me the memory warning - getting a photo.
- (void)imagePickerController:(UIImagePickerController *)picker
didFinishPickingMediaWithInfo:(NSDictionary *)info {
self._photo = [info objectForKey:UIImagePickerControllerOriginalImage];
self.photoView.photoView.image = self._photo;
[self.photoButton setImage:self._photo forState:UIControlStateNormal];
[self dismissModalViewControllerAnimated: YES];
}
私はすでに自分のコードをチェックしていますが、私が知る限り、潜在的なメモリリークはありません。
私は、写真の扱いにいくらかのメモリがかかることを知っています。したがって、メモリ警告を受けるのは正常です。
しかし、問題がある場合があります。viewController
ちょうどrelease
ナビゲーションスタック内のparentViewコントローラに戻るための警告など、何か重要なことがあります。
私のボタンや他の重要なものが早すぎると解放された場合、私はメモリ警告を受けたくありません。
これを修正する方法はありますか?