1

どのiPhoneアプリケーションでも、いつでも1つのUIWindowインスタンスのみが可能であることを誰かが確認できますか?

更新:このリンク で次の情報を見つけました。これによると、多くのウィンドウが存在する可能性があります。

さらに、UIApplication オブジェクトは、アプリケーションで現在開いているすべてのウィンドウ (UIWindow オブジェクト) のリストを保持しているため、それらを介してアプリケーションの UIView オブジェクトを取得できます。

4

3 に答える 3

5

過去に複数のUIWindowsをうまく使用していました。それにはいくつかの理由があります。たとえば、UIWindow の rootViewController を何度 nil に設定しても解放できません。しかし、ウィンドウを収集するとうまくいきます。複数のウィンドウを使用することで、いくつかの視覚効果と明確なコード分離を実現できます。実験をしたがらない人がどれだけ多いかに、私はうれしい驚きを感じています。Appleは「すべきではない」としか言いません。彼らが私たちにそれを使わせたくないのなら、私たちもそれを知ることはできませんし、知ることさえできません.

于 2011-08-04T19:16:35.950 に答える
0

はい、iOS apsの場合、通常はUIWindowが1つだけです。

http://developer.apple.com/library/ios/#documentation/WindowsViews/Conceptual/ViewPG_iPhoneOS/Introduction/Introduction.html%23//apple_ref/doc/uid/TP40009503

于 2010-09-23T06:24:13.160 に答える
0

ウィンドウには 3 つのタイプがあり、私見ではそれらすべてを使用するのが理にかなっています。

  1. 通常のウィンドウ - すべてのアプリで使用する keyWindow

  2. ステータスバー ウィンドウ - 「ユーザーがステータスバーをクリックしたときに何が起こるか」などのカスタマイズに使用されます (デフォルトでは、スクロール ビューをページの一番上までスクロールしますが、他の動作を追加できます。たとえば、アプリでスクロール ビューを使用しないが、 「同等の」機能を提供する意味)

  3. アラート ウィンドウ - カスタム ポップアップを作成する場合など。多くの開発者はカスタム ポップアップを作成しますが、それらを警告ウィンドウとして宣言しません。これにより、グラフィックの不具合が発生することがあります。たとえば、非同期のことが発生してポップアップの上に表示されたり、アニメーションがポップアップの上に表示されたりする場合です。

于 2011-01-16T21:08:10.697 に答える