2012-05-17 8 views
6

私はUIImagePickerControllerを使って画像を撮影しています。問題は、それが一度発生した場合、我々は殺して、アプリケーションを再起動するまで、それが復元したことがない、黒い画面として、ランダムに私はプレビューを取得していますということですUIImagePickerController私に黒いプレビューを与えます

UIImagePickerController* UIPicker = [[UIImagePickerController alloc] init]; 
UIPicker.delegate = self; 
UIPicker.sourceType= UIImagePickerControllerSourceTypeCamera; 
[UIPicker setCameraCaptureMode:UIImagePickerControllerCameraCaptureModePhoto]; 
UIPicker.allowsEditing=NO; 
[self presentModalViewController:UIPicker animated:YES]; 
[UIPicker release]; 

:私は、次のコードを使用しています。

私はUIImagePickerControllerDelegateから正しい画像を取得していますが、UIImagePickerControllerにソースタイプとしてのカメラがある場合、プレビューでこの問題が発生します。

答えて

0

ランダムに発生した場合、私はそれがメモリ問題であるとは思わない。 UIImagePickerControllerの画像はかなり大きなものです。何らかの形でイメージを操作すると、メモリがそれをサポートできない場合があります。

0

カメラのプレビューでこの同じ問題が発生しました。問題の根本原因は、バックグラウンドキューのUIを変更したアプリケーションデリゲートの完全に無関係なコードでした。

明らかに、AVFoundationが依存する壊れやすい内部変数を不安定にすることはあまりありません。

バックグラウンドキューからUIコードへの呼び出しを取り除くと、カメラのプレビューが高速かつ確実になりました。

この記事(http://www.cocoanetics.com/2013/02/uiview-background-queue-debugging/)は、UIがバックグラウンドキューから変更されている場所を追跡するのに非常に役立ちました。

この質問に対する回答を確認することをお勧めします(iOS 7 UIImagePickerController has black preview

関連する問題