2011-01-17 13 views
24

zu verwenden ist mir unklar, wann PopupWindow vs Dialog zu verwenden. Jede Einsicht würde sehr geschätzt werden. Vielen Dank.Wann Android PopupWindow vs Dialog

+1

Ein Zusammenhang mit dem, was Sie erreichen möchten, wäre hilfreich, um Ihre Frage zu beantworten. Ab jetzt scheint es zu weit zu beantworten (ich nehme an, Sie haben die Dokumentation für beide Methoden bereits gelesen). –

Antwort

4

Ich denke, dass Sie Dialog für einfache Benutzerinteraktion verwenden sollten (JA, NEIN). Normalerweise verwende ich Dialog für einfache Benutzerinteraktion und WindowPopup für eine etwas komplexere Ansicht. Ein Beispiel für WindowPopup ist AutoCompleteTextView.

Ich hoffe, es hilft.

+0

Ich habe einige Probleme mit Dialog und Popup-Fenster! Was sollte ich wählen, wenn ich dem Nutzer Informationen geben möchte? –

7

Beide verwenden die addView() - Methode zusammen mit verschiedenen WindowManager-Methoden. Die beiden sind in dieser Hinsicht ähnlich.

Dialoge scheinen mit mehr integrierten Funktionen für die Interaktion, wie Handler und Schaltflächen bereits in der Basisklasse enthalten, während PopupWindows mit mehr integrierten Methoden zur Positionierung sie über den Bildschirm kommen.

Ich denke, dass jeder von ihnen genau das gleiche wie der andere tun kann, aber die Wahl zwischen den beiden wird eine Frage der Bequemlichkeit für den Programmierer in Bezug darauf sein, wie Sie das Objekt verwenden möchten. Ich bin kein Doktor der Informatik, aber ich glaube nicht, dass es einen signifikanten Unterschied in der Bearbeitungszeit zwischen den beiden gibt, basierend auf dem, was ich in ihren jeweiligen Klassendefinitionen gesehen habe.

Mein Tipp: Wenn Sie mehr Kontrolle darüber haben möchten, wo Ihre Ansicht auf dem Bildschirm angezeigt wird, verwenden Sie ein PopupWindow. Wenn Sie mehr Kontrolle und Feedback zwischen Ihrer Ansicht hinzufügen möchten, verwenden Sie einen Dialog. Wenn Sie, wie ich, die Kontrolle über alles behalten wollen, würde ich ein PopupWindow vorschlagen, da es weniger benutzerdefinierbare Standardmethoden zum Überschreiben gibt.

0

Ich denke, Dialog sollte verwenden, wenn Sie Maßnahmen ergreifen müssen, bevor Sie mit dem nächsten fortfahren. Es deckt nie den Bildschirm ab und justiert immer zentriert als modales Ereignis. Auf der anderen Seite, PopupWindow hat Flexibilität, um Informationen überall auf dem Bildschirm als Position wie klebrige Fußzeile, sticky Header, links, rechts, Zentrum usw. nach Standort festgelegt. Zum Anzeigen von Informationen ist es eine gute Option, da es auch eine Möglichkeit zum Animieren gibt. Kurz gesagt: Zum Anzeigen von Informationen mit minimaler Aktion gehen Sie mit PopupWindow und für eine kontrollierte Aktion weiter mit Dialog.

Verwandte Themen