2011-01-17 5 views
24

PopupWindowとDialogをいつ使用するのか不明です。どんな洞察も高く評価されるだろう。ありがとう。Android PopupWindow対ダイアログを使用する場合

+1

あなたが達成しようとしていることに関するいくつかの文脈は、あなたの質問に答えるのに役立ちます。現時点では、答えが広いと思われます(私はすでに両方の方法のドキュメントを読んでいると仮定します)。 –

答えて

4

私は、単純なユーザー操作(YES、NO)のためにダイアログを使うべきだと思います。 私は通常、単純なユーザーのやりとりのためにダイアログを使用し、少し複雑なビューのためにWindowPopupを使用します。 WindowPopupの一例はAutoCompleteTextViewです。

希望します。

+0

私はダイアログとポップアップウィンドウに関するいくつかの問題があります!ユーザーにいくつかの情報を提供したいと思ったらどうしますか? –

7

これらはどちらも、さまざまなwindowManagerメソッドとともにaddView()メソッドを使用します。その点で2つは似ています。

ダイアログには、ハンドラやボタンが既に基本クラスに含まれているなど、より多くの組み込み機能が用意されているようですが、PopupWindowsには画面の配置方法が組み込まれています。

私はそれらのそれぞれが他のものとまったく同じことをすることができると思いますが、2つの間の選択は、どのようにオブジェクトを使用するかに関してプログラマにとって便利です。私はコンピュータサイエンスの博士号ではありませんが、それぞれのクラス定義で見たものに基づいて、2つの処理時間に大きな違いはないと思います。

私のアドバイス:あなたのビューがディスプレイ上のどこに表示されるかをもっとコントロールしたい場合は、PopupWindowを使用してください。ビューの間にコントロールとフィードバックを追加する場合は、ダイアログを使用します。私のように、すべてのことをマスターコントロールしたい場合は、PopupWindowを提案します。これは、ユーザーが明示するデフォルトのメソッドをオーバーライドすることが少ないためです。

0

私はダイアログが次のステップに進む前に行動を取る必要があるときに使うべきだと思います。それは画面を覆うことはなく、モーダルイベントとして常に調整された中心を調整します。 反対に、PopupWindowは、場所の設定ごとに、固定フッター、固定ヘッダー、左、右、中央などのような位置に応じて、画面のどこにでも情報を柔軟に調整できます。 情報を表示するには、アニメーション化する機能もあるため、良い選択です。要するに、最小限の操作で情報を表示するためには、PopupWindowを使用し、次に制御されたアクションを続行するにはダイアログを使用します。

関連する問題