1

これを解決するために SO を検索していますが、問題を解決するものは見つかりませんでした。だからここに問題があります:

ボタンのタッチで UIImagePickerController をロードするはずのときに、私のアプリが白い画面をロードすることがあります。

これは、メモリ警告が発生した場合にのみ発生するため、メモリの問題です。2つのビューコントローラー間の移行時に、メモリ警告が元のビューコントローラー(イメージピッカーをロードするもの)を解放するようです。

これにより、元のビューコントローラーがなくなり、UIImagePickerController が読み込まれなくなります (親がないため)、つまり白い画面になります。

また、言及する価値があるのは、vc antを「提示」する前後にプログラムでメモリ警告を発したことです。問題は再現しません。

[[UIApplication sharedApplication] _performMemoryWarning];
[self presentModalViewController:picker animated:YES];
[[UIApplication sharedApplication] _performMemoryWarning];

どんな助けでも大歓迎です!

4

1 に答える 1

0

次に、次のようにします。

  1. 直接確認できる場合:が読み込まれているかどうかを確認し、必要に応じて手動で読み込みますviewWillAppearUIImagePicker
  2. 直接確認できない場合:didReceiveMemoryWarningカスタム UIViewController サブクラスでメソッドをオーバーライドします。この関数をブール値のように設定し、imagePickerNeedsReload = YESでこのフラグをチェックするviewWillAppearと、1 が実行されます。
于 2012-09-17T10:50:24.117 に答える