6

メインウィンドウのrootViewControllerからモーダルビューコントローラーを提示するシナリオがあります。このモーダルのコンテンツをロードしている間、キーを表示して表示する別のロードウィンドウに切り替えています。

このウィンドウは読み込みインジケーターとして機能し、ユーザーがアプリを操作することを許可しません。ロードが完了したら、キーを押して表示することでメインウィンドウに戻ります。これを行うと、モーダルが強制的に閉じられ、アプリはモーダルを表示できなくなります。

興味深いことに、メインウィンドウに戻ったときに[UIWindow makeKeyWindow]を実行しても、問題はありません。[UIWindowmakeKeyAndVisible]が問題の原因です。[UIWindow makeKeyWindow]は許容できる代替手段ですか?

これはiOS5のみです。iOS6では問題はありません。iOS4をサポートしていません。ここで何が起こっているのか誰か知っていますか?

4

2 に答える 2

6

私は同じ動作をしました。ドキュメントにはmakeKeyAndVisibleメソッドが便利なメソッドmakeKeyAndVisibleであると記載されているため、呼び出しを実際のコードに置き換えることは正当に思えます。

[window makeKeyWindow];
window.hidden = NO;

何が悪いのかわかりませんが、バグのようです。

于 2013-03-05T13:30:00.793 に答える
0

これは、iOS 5 UIWindow 実装の明らかにバグです。私はこの奇妙な振る舞いに直面し、アレクセイの答えが道です。

于 2013-04-24T06:24:37.883 に答える