¿Por qué uno utilice la clase AlertDialog.Builder
en lugar de los métodos disponibles directamente a AlertDialog
, Por ejemplo, ¿por qué utilizar AlertDialog.Builder.setCancellable
lugar de AlertDialog.setCancellable
? Sin duda, este es un caso de redundancia?AlertDialog vs AlertDialog.Builder
Respuesta
Porque AlertDialog.setCancellable
devuelve vacío y AlertDialog.Builder.setCancellable
devuelve AlertDialog.Builder
.
Esto significa que el constructor le permite encadenar varios ajustes con un poco menos de detalle. Es sólo una clase de conveniencia
Creo que los métodos de fábrica son más convenientes.
AlertDialog le permite mostrar un cuadro de diálogo sobre su actividad/fragmento. Por lo general, se utiliza para solicitar interacción con el usuario, incluidos algunos botones o notificar algo.
AlertDialog.Builder es una clase estática interna de AlertDialog que le permite configurar rápidamente un diálogo con sus prácticos métodos. Es como una clase de ayuda para AlertDialog. Se usa para llamar a métodos en una cadena.
¿Pero a quién ayuda? ¿Su propósito es simplemente concretar todo en una declaración larga en lugar de declaraciones individuales múltiples (establecer el título, etc.) o ofrece más funcionalidades de alguna manera? – stephenfin
sí, es conveniente llamar también a los métodos de una cadena – waqaslam
@stephenfin en realidad no - las clases de compilador no son solo para encadenar llamadas a métodos. a menudo actúan como una fábrica que proporciona valores predeterminados razonables y opciones de personalización. también es muy común que el producto ('AlertDialog') sea inmutable/abstracto, mientras que las contrapartes de fábrica no lo son, lo que puede facilitar tremendamente el proceso de creación del producto. tomar por ejemplo 'StringBuilder' o' ProcessBuilder'. – andr
AlertDialog.Builder
hace la configuración de los atributos como setTitle()
o setMessage()
y se No se ven las al usuario.
AlertDialog
es la que muestra aquellos atributos que se han conjunto en el AlertDialog.Builder
.
El propósito de tener ambos, como se menciona en alguna parte, es que permite que la configuración se realice de forma separada de la visualización real, lo que a su vez hace que todo sea conveniente.
- 1. Cómo descartar AlertDialog.Builder?
- 2. AlertDialog dentro de onClickListener
- 3. AlertDialog setOnDismissListener no funciona
- 4. Android: AlertDialog personalizada
- 5. Cómo cancelar un AlertDialog.Builder
- 6. Ocultar teclado en AlertDialog
- 7. Texto de entrada de AlertDialog
- 8. ProgressDialog y AlertDialog causa ventana
- 9. Resizing EditText dentro de un AlertDialog
- 10. Usando ArrayAdapter con AlertDialog y .setAdapter
- 11. Android - ¿Actualizar datos en un AlertDialog?
- 12. ¿Por qué AlertDialog.Builder (Context context) solo acepta Activity como parámetro?
- 13. Cambiar el estilo de AlertDialog
- 14. DialogFragment: Uso de AlertDialog con diseño personalizado
- 15. No se muestran los elementos de AlertDialog
- 16. AlertDialog MultiChoiceItems Problemas del Oyente
- 17. AlertDialog de opción múltiple con adaptador personalizado
- 18. Android EditText en AlertDialog parece demasiado amplio
- 19. Vista de lista personalizada para AlertDialog
- 20. AlertDialog.Builder: Copias de casillas de verificación se muestran
- 21. Android AlertDialog cuadro WindowManager $ BadTokenException problema
- 22. ¿Cómo poner una imagen en un AlertDialog? Android
- 23. ¿en qué contexto debo usar AlertDialog.Builder?
- 24. ¿Es posible crear una lista expandible AlertDialog?
- 25. ¿Cómo puedo obtener los resultados de un AlertDialog?
- 26. ¿Cómo mostrar AlertDialog en un fragmento?
- 27. Android AlertDialog Botón único
- 28. AlertDialog con selector de
- 29. Imágenes en AlertDialog botones
- 30. ListView en AlertDialog
Entonces, ¿es "algo así como" los operadores istream/ostream en C++? Eso suena razonable – stephenfin