La documentazione di progettazione Android in http://developer.android.com/design/building-blocks/dialogs.html differenzia chiaramente tra finestre di dialogo, avvisi, popup e toast. Si consiglia inoltre l'implementazione delle finestre di dialogo tramite la classe DialogFragment
e Toast tramite la classe Toast
. Tuttavia non è chiaro a me se Popups debba essere implementato con PopupWindow
o con DialogFragment
.Finestre di dialogo e popup in Android
so che DialogFragments
solito sono dotati di pulsanti OK/Annulla e che la posizione del PopupWindows
può essere definita, ma:
- Sono queste piccole differenze gli unici argomenti di utilizzare uno o l'altro?
- È
DialogFragment
il successore diPopupWindow
che sarà deprecato ad un certo punto? - In base alla risposta in https://stackoverflow.com/a/15165554/2482894, PopupWindow è "Limitato a pochi modelli", ma non riesco a trovare alcun riferimento a una quantità limitata di modelli nella documentazione della classe.
- Quindi, infine, come implementeresti Popup come questi http://developer.android.com/design/media/dialogs_popups_example.png e perché?
Ok, secondo [dialogs.html] (http : //developer.android.com/guide/topics/ui/dialogs.html), raccomandano l'uso di 'DialogFragment'even per windows come [list_dialog] (http://developer.android.com/images /ui/dialog_list.png) che non ha pulsanti. Inoltre, immagino che il fatto di essere basato su 'Fragments' faciliti l'aggiunta a BackStack, mentre non sono chiaro come lo farei con' PopupWindow'. Pertanto, sto andando per l'approccio 'DialogFragment', anche se apprezzerei ancora alcuni dettagli più approfonditi sul confronto di entrambe le classi. – leo9r