6

私は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

4

2 に答える 2

0

ランダムに発生する場合は、メモリの問題だと思います。UIImagePickerController からの画像は非常に大きなものです。何らかの方法で画像を操作できたとしても、記憶がそれをサポートできない可能性があります。

于 2013-12-17T11:31:38.337 に答える
0

今夜のカメラ プレビューで同じ問題に遭遇しました。問題の根本的な原因は、バックグラウンド キューの UI を変更したアプリ デリゲートのまったく無関係なコードでした。

どうやら、AVFoundation が依存している壊れやすい内部変数を不安定にするのにそれほど時間はかからないようです。

バックグラウンド キューからの UI コードの呼び出しをなくすと、カメラ プレビューが高速で信頼できるものになりました。

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

また、この質問に対する回答を確認することをお勧めします ( iOS 7 UIImagePickerController には黒のプレビューがあります) 。

于 2014-09-11T02:19:52.547 に答える