Cuadro de diálogo de alerta personalizada que parece extraño en Android 4.x
Quiero personalizar el diálogo de alerta en mi aplicación para Android, así que empecé cambiando el atributo alertDialogTheme del tema de mi aplicación de la siguiente manera:
Res / values / themes.xml
- No se ha encontrado actividad para manejar Intent - android.intent.action.OPEN_DOCUMENT
- Mylib.so tiene reubicaciones de texto. Esto es perder la memoria y es un riesgo de seguridad. Por favor, arregla
- Las pruebas fallan después de la actualización de Espresso 2 (falló: La ejecución de instrumentación falló debido a 'java.lang.IllegalAccessError')
- La asignación de ventana de cursor de 2048 kb falló. # Cursores abiertos = 1 (# cursores abiertos por este proc = 1)
- Actualizar los datos de la zona horaria de Android
<resources> <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"> <item name="android:alertDialogTheme">@style/AlertDialogTheme</item> </style> <style name="AlertDialogTheme" parent="Theme.AppCompat.Light.Dialog.Alert"/> </resources>
Simplemente haciendo eso, no esperaba que el diálogo tuviera un aspecto diferente del estándar, porque el nuevo tema AlertDialogTheme es exactamente el mismo que su padre. Funcionó correctamente en Android Lollipop, pero en Android Kitkat aparece un rectángulo blanco detrás del diálogo. Así es como se veía:
¿Estoy haciendo algo mal? Tal vez usando el padre equivocado?
¡Gracias!
- ¿Cómo salir completamente de Immersive pantalla completa?
- Android: barra de estado de la barra de herramientas superpuesta
- Evitar el diálogo de usuario cuando se enlaza con el dispositivo BLE utilizando PIN en la API más reciente (Lollipop)
- Creación de una aplicación para Android con targetSdkVersion de 25 y minSdkVersion 19
- Volver automáticamente a la anterior aplicación de SMS predeterminada
- ¿Cómo se puede utilizar ViewPropertyAnimator para establecer Width a un valor específico
- Establecer el modo de pantalla completa inmersiva de Android en el manifiesto
- Imprima varias páginas PDF utilizando el marco de impresión de Android 4.4
Esto sucede porque está utilizando AlertDialog
lugar del relativamente nuevo AlertDialogCompat
. Éste trae los mismos diálogos del estilo del diseño del material a través de todas las plataformas y se alienta altamente su uso.
Para usarlo, debe estar seguro de que en su archivo Gradle tiene la siguiente línea dentro de sus dependencias:
com.android.support:appcompat-v7:24.2.1
(Esta es la última versión. Asegúrese de tener todos sus paquetes actualizados mirando al Administrador del SDK).
A continuación, en la actividad en la que desea mostrarla, debe importar android.support.v7.app.AlertDialog
y utilizar AlertDialog.Builder exactamente como lo estaba utilizando antes.
Lo arreglé usando el siguiente código:
<style name="CustomAppCompatAlertDialogStyle" parent="Theme.AppCompat.Light.Dialog.Alert"> <item name="android:windowBackground">@android:color/transparent</item> </style>
- Existencia del parámetro (vista de vista)
- Cómo deshabilitar la funcionalidad pulltorefresh por primera vez?