Cambiar el icono de desbordamiento en la barra de acción

¿Es posible cambiar el icono de desbordamiento en la barra de acción? Tengo iconos azules para todos los elementos de ActionBar y también quiero cambiar el icono de desbordamiento cuando aparezca.

Puedes hacerlo con un estilo, pero tienes que añadirlo a la declaración principal del tema.

<resources> <!-- Base application theme. --> <style name="Your.Theme" parent="@android:style/Theme.Holo"> <!-- Pointer to Overflow style ***MUST*** go here or it will not work --> <item name="android:actionOverflowButtonStyle">@style/OverFlow</item> </style> <!-- Styles --> <style name="OverFlow" parent="@android:style/Widget.Holo.ActionButton.Overflow"> <item name="android:src">@drawable/ic_action_overflow</item> </style> </resources> 

Usted también puede cambiar dinámicamente, que voy a detallar aquí:

Cambio del icono de menú Desbordamiento de Android mediante programación

Para aquellos que no pueden conseguir que funcione intente esto SIN el "android:" namespace.

 <item name="actionOverflowButtonStyle">@style/OverFlow</item> 
  1. Cambie el icono de desbordamiento personalizado de Actionbar en styles.xml.

      <resources> <!-- Base application theme. --> <style name=“MyTheme" parent="@android:style/Theme.Holo"> <!-- Pointer to Overflow style DONT forget! --> <item name="android:actionOverflowButtonStyle">@style/MyOverFlow</item> </style> <!-- Styles --> <style name="MyOverFlow" parent="@android:style/Widget.Holo.ActionButton.Overflow"> <item name="android:src">@drawable/ic_your_action_overflow</item> </style> </resources> 
  2. Poner el tema personalizado "MyTheme" en la etiqueta de la aplicación de AndroidManifest.xml

     <application android:name="com.example.android.MainApp" android:theme="@style/AppTheme"> </application> 

Que te diviertas.@.@

@ Adneal respuesta es correcta (por lo que esta es sólo una explicación wiki de la comunidad para ampliar en él).

Uno de los comentarios sugirió que puede haber malentendido cómo hacer esto, por lo que mi respuesta es sólo otro ejemplo de cómo anular la imagen del icono de desbordamiento.

El código a continuación se basa en los estilos de plantilla de la muestra de ADT Nuevo proyecto de Android. El código proviene del archivo styles.xml en la carpeta res/values .


 <style name="AppBaseTheme" parent="android:Theme.Light"> <!-- Theme customizations available in newer API levels can go in res/values-vXX/styles.xml, while customizations related to backward-compatibility can go here. --> </style> <!-- Application theme. --> <style name="AppTheme" parent="AppBaseTheme"> <!-- All customizations that are NOT specific to a particular API-level can go here. --> <item name="android:actionOverflowButtonStyle">@style/OverflowMenuButton</item> </style> <style name="OverflowMenuButton" parent="@android:style/Widget.Holo.ActionButton.Overflow"> <item name="android:src">@drawable/ic_menu_moreoverflow</item> </style> 

Lo que este código anterior hace es reemplazar el icono de desbordamiento por defecto con cualquier dibujable que tenga que se denomina ic_menu_moreoverflow . Si desea una manera rápida de probarlo, utilice el nombre de archivo del icono del lanzador de la aplicación, que hará que sea obvio cómo funciona.

Un recurso útil para usar al intentar entender el estilo de ActionBar es:

  • Generador de estilo de barra de acción de Android

Allí puedes definir colores específicos para usar para el icono de desbordamiento y el archivo ZIP incluirá el archivo styles.xml correcto para ti.

Después de una larga búsqueda de lo que obtuve la orientación a seguir como:

  1. Compruebe el tema en el archivo del manifiesto.
  2. Luego vaya a res-> valores-> temas.
  3. Busque el nombre del tema en este archivo.
  4. Agregue el elemento dentro del tema en el tema.xml:

     <item name="android:actionBarWidgetTheme">@style/widgetStyle</item> <item name="android:actionOverflowButtonStyle">@style/MyActionButtonOverflow</item> 
  5. Añadir el icono en el estilo en el mismo archivo me refiero theme.xml:

     <style name="MyActionButtonOverflow" parent="android:style/Widget.Holo.ActionButton.Overflow"> <item name="android:src">@drawable/icon_menu</item> </style> 
  6. Echa un vistazo al icono personalizado que quieres cambiar

Funcionó para mí

  • Mantenga la barra de acciones visualizada al cambiar PreferenceScreen
  • Tema de pantalla completa para AppCompat
  • Soporte de la barra de acciones v7 android
  • Configuración de la elevación de ActionBar en dispositivos anteriores a 5.0 con AppCompat
  • Crear "historial" en SearchView en ActionBar
  • Cómo agregar un SearchWidget a la ActionBar?
  • Eliminar el botón "Listo" de ActionMode
  • Color de texto de ActionBar
  • Android: ¿Cómo navegar de nuevo desde la sub-pantalla de preferencia a través de la barra de acción en xml?
  • Cómo agregar elementos de submenú a ActionBar acción en código?
  • No se puede obtener la barra de acción dividida de Android 4.0
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.