Cambiar color de android:activatedBackgroundIndicator
¿Puedo cambiar el color predeterminado (azul) del atributo android:activatedBackgroundIndicator?
Estoy desarrollando una aplicación para target 18 y mínimo 11.
Gracias
Aquí tienes una manera de cambiarlo en tu tema:
Actualice su tema para aplicar su estilo personalizado en el activatedBackgroundIndicator
atributo (aquí el tema principal es Holo Light pero, por supuesto, puede cambiarlo):
<style name="AppTheme" parent="@android:style/Theme.Holo.Light">
<item name="android:activatedBackgroundIndicator">@drawable/list_activated_background</item>
</style>
En su carpeta de recursos "dibujables", cree el archivo XML list_activated_background y defina su nuevo indicador de fondo, por ejemplo:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_activated="true" android:drawable="@color/OrangeLight" />
<item android:state_checked="true" android:drawable="@color/OrangeDark" />
<item android:state_pressed="true" android:drawable="@color/OrangeDark" />
<item android:drawable="@android:color/transparent" />
</selector>
Luego, solo asegúrese de llamar a su tema personalizado en el archivo de manifiesto android:theme="@style/AppTheme"
en este caso, por ejemplo.
En Lollipop y superiores, tienes la opción de configurar colorControlActivated
tu tema:
<style name="AppTheme" parent="@android:style/Theme.Material">
<item name="colorControlActivated">@color/your_color</item>
</style>
Este enfoque funciona porque el activatedBackgroundIndicator
selector del tema material utiliza ?attr/colorControlActivated
el estado de activación como se ve en themes_material.xml y activado_background_material.xml .
Tenga en cuenta que la respuesta de Yoann Hercouet es correcta y todavía funciona en Lollipop.