2011-01-17 12 views
24

No tengo claro cuándo usar PopupWindow vs Dialog. Cualquier idea sería muy apreciada. Gracias.Cuándo utilizar Android PopupWindow vs Dialog

+1

Algún contexto sobre lo que está tratando de lograr sería útil para responder a su pregunta. A partir de ahora, parece bastante amplio responder (supongo que ya ha leído la documentación de ambos métodos). –

Respuesta

4

Creo que debería usar Dialog para una interacción simple del usuario (SÍ, NO). Normalmente utilizo Dialog para la interacción simple del usuario y WindowPopup para una vista un poco más compleja. Un ejemplo de WindowPopup es AutoCompleteTextView.

Espero que ayude.

+0

¡Tengo algunos problemas con el diálogo y la ventana emergente! ¿Qué debo elegir cuando quiero sugerir información al usuario? –

7

Ambos usan el método addView() junto con varios métodos de WindowManager. Los dos son similares en ese sentido.

Los cuadros de diálogo parecen tener más funciones incorporadas para la interacción, como controladores y botones ya incluidos en la clase base, mientras que PopupWindows incluye más métodos integrados para colocarlos sobre la pantalla.

Creo que cada uno de ellos puede hacer exactamente lo mismo que el otro, pero elegir entre los dos será una cuestión de conveniencia para el programador en cuanto a cómo desea utilizar el objeto. No soy un doctorado en informática, pero no creo que haya una diferencia significativa en el tiempo de procesamiento entre los dos en función de lo que vi en sus respectivas definiciones de clase.

Mi consejo: Si desea tener un mayor control sobre dónde aparece su vista en la pantalla, use una ventana emergente. Si desea agregar más control y retroalimentación entre su Vista, entonces use un Diálogo. Si usted, como yo, desea un control maestro sobre todo, sugeriría una Ventana emergente, ya que tiene menos métodos predeterminados evidentes por el usuario para anular.

0

Creo que el cuadro de diálogo debería usarse cuando deba tomar medidas antes de continuar para continuar. Nunca cubre la pantalla y siempre ajusta el centro alineado como evento modal. Por otro lado, PopupWindow tiene flexibilidad para ajustar la información en cualquier lugar de la pantalla como posición, como pie de página adhesivo, encabezado adhesivo, a la izquierda, derecha, centro, etc. según la ubicación establecida. Para mostrar información, es una buena opción ya que también hay una función para animar. En resumen, para mostrar información con acción mínima, vaya con PopupWindow y para que la acción controlada continúe luego vaya a Diálogo.