Desafortunadamente, esta no es una tarea particularmente sencilla de realizar. En mi respuesta aquí , detallo cómo ajustar el color de un ListSeparator
simplemente revisando el estilo principal utilizado por Android, creando una nueva imagen y creando un nuevo estilo basado en el original. Desafortunadamente, a diferencia del ListSeparator
estilo de ',AlertDialog
temas son internos y, por lo tanto, no se puede hacer referencia a ellos como estilos principales. ¡No hay una manera fácil de cambiar esa pequeña línea azul! Por lo tanto, debe recurrir a la creación de cuadros de diálogo personalizados.
Si esa no es tu taza de té ... ¡ no te rindas! Me molestó mucho que no hubiera una manera fácil de hacer esto, así que configuré un pequeño proyecto en github para hacer diálogos de estilo holográfico personalizados rápidamente (asumiendo que el teléfono admite el estilo Holo). Puede encontrar el proyecto aquí: https://github.com/danoz73/QustomDialog
¡Debería permitir pasar fácilmente de un azul aburrido a un naranja emocionante!
El proyecto es básicamente un ejemplo del uso de un generador de diálogo personalizado, y en el ejemplo creé una vista personalizada que parecía adaptarse al ejemplo de dirección IP que proporcionaste en tu pregunta original.
Con QustomDialog
, para crear un cuadro de diálogo básico (título, mensaje) con un color diferente deseado para el título o divisor, utilice el siguiente código:
private String HALLOWEEN_ORANGE = "#FF7F27";
QustomDialogBuilder qustomDialogBuilder = new QustomDialogBuilder(v.getContext()).
setTitle("Set IP Address").
setTitleColor(HALLOWEEN_ORANGE).
setDividerColor(HALLOWEEN_ORANGE).
setMessage("You are now entering the 10th dimension.");
qustomDialogBuilder.show();
Y para agregar un diseño personalizado (por ejemplo, para agregar la pequeña dirección IP EditText
), agrega
setCustomView(R.layout.example_ip_address_layout, v.getContext())
al constructor con un diseño que haya diseñado (el ejemplo de IP se puede encontrar en el github). Espero que esto ayude. Muchas gracias a Joseph Earl y su respuesta aquí .