Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


¿Cómo cambiar el icono del menú de opciones en la barra de acción?

¿Cómo cambiar el icono de índice del menú de opciones?

Introduzca aquí la descripción de la imagen

  • ¿Por qué no se actualizan mis archivos de activos?
  • Obtener la extensión de archivo de imágenes seleccionadas de galería o cámara, como cadena
  • ¿Es android: exportado = "true" realmente necesario para un servicio de autenticación?
  • Cómo elegir un segundo usando TimePicker, android
  • Utilizar Picasso para obtener una devolución de llamada con un mapa de bits
  • Cómo deshabilitar los mensajes de depuración de Android MediaPlayer
  • Quiero decir icono (3).

    Aquí está mi código:

    @Override public boolean onCreateOptionsMenu(Menu menu) { MenuInflater inflater = getMenuInflater(); inflater.inflate(R.menu.options, menu); return true; } 

    Y aquí está el archivo XML:

     <item android:id="@+id/Bugreport" android:title="@string/option_bugreport" /> <item android:id="@+id/Info" android:title="@string/option_info" /> <item android:id="@+id/About" android:title="@string/option_about" /> 

  • Efectos secundarios de cambiar el filtro y los requisitos de una aplicación existente en Android Play / Market
  • ¿Cómo puedo transferir una imagen de su URL a la tarjeta SD?
  • EditText en ListView oculto por el teclado cuando se enfoca
  • Revertir la ingeniería de un archivo APK a un proyecto
  • El proyecto Cordova Android no compila
  • Usando una contraseña de keystore vacía solía ser posible?
  • 9 Solutions collect form web for “¿Cómo cambiar el icono del menú de opciones en la barra de acción?”

    Las siguientes líneas se deben actualizar en app -> main -> res -> values ​​-> Styles.xml

      <!-- 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/MyActionButtonOverflow</item> </style> <!-- Style to replace actionbar overflow icon. set item 'android:actionOverflowButtonStyle' in AppTheme --> <style name="MyActionButtonOverflow" parent="android:style/Widget.Holo.Light.ActionButton.Overflow"> <item name="android:src">@drawable/ic_launcher</item> <item name="android:background">?android:attr/actionBarItemBackground</item> <item name="android:contentDescription">"Lala"</item> </style> 

    Así es como se puede hacer. Si desea cambiar el icono de desbordamiento en la barra de acción

    Tengo una solución más sencilla que funcionó perfectamente para mí:

     Drawable drawable = ContextCompat.getDrawable(getApplicationContext(),R.drawable.change_pass); toolbar.setOverflowIcon(drawable); 

    1) Declare el menu en su clase.

     private Menu menu; 

    2) En onCreateOptionsMenu haga lo siguiente:

     public boolean onCreateOptionsMenu(Menu menu) { this.menu = menu; getMenuInflater().inflate(R.menu.menu_orders_screen, menu); return true; } 

    3) En onOptionsItemSelected , obtener el elemento y hacer los cambios necesarios (icono, texto, color, fondo)

     public boolean onOptionsItemSelected(MenuItem item) { int id = item.getItemId(); if (id == R.id.action_search) { return true; } if (id == R.id.ventor_status) { return true; } if (id == R.id.action_settings_online) { menu.getItem(0).setIcon(getResources().getDrawable(R.drawable.history_converted)); menu.getItem(1).setTitle("Online"); return true; } if (id == R.id.action_settings_offline) { menu.getItem(0).setIcon(getResources().getDrawable(R.drawable.cross)); menu.getItem(1).setTitle("Offline"); return true; } return super.onOptionsItemSelected(item); } 

    Nota :
    Si tiene 3 elementos de menú:
    Menu.getItem (0) = 1 elemento,
    Menu.getItem (1) = 2 iteam,
    Menu.getItem (2) = 3 elemento

    Basado en esto haga los cambios por consiguiente según su requisito.

     //just edit menu.xml file //add icon for item which will change default setting icon //add sub menus ///menu.xml file <item android:id="@+id/action_settings" android:orderInCategory="100" android:title="@string/action_settings" android:icon="@drawable/your_icon" app:showAsAction="always" > <menu> <item android:id="@+id/action_menu1" android:icon="@android:drawable/ic_menu_preferences" android:title="menu 1" /> <item android:id="@+id/action_menu2" android:icon="@android:drawable/ic_menu_help" android:title="menu 2" /> </menu> </item> 

    Utilice el ejemplo de Syed Raza Mehdi y agregue el parámetro name=actionOverflowButtonStyle en el Application theme para compatibilidad.

     <!-- 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/MyActionButtonOverflow</item> <!-- For compatibility --> <item name="actionOverflowButtonStyle">@style/MyActionButtonOverflow</item> </style> 

    Puedes lograr esto haciendo

     <item android:id="@+id/menus" android:actionProviderClass="@android:style/Widget.Holo.ActionButton.Overflow" android:icon="@drawable/your_icon" android:showAsAction="always"> <item android:id="@+id/Bugreport" android:title="@string/option_bugreport" /> <item android:id="@+id/Info" android:title="@string/option_info" /> <item android:id="@+id/About" android:title="@string/option_about" /> </item> 
    1. Cambiar 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.@.@

    Una manera corta y fácil de cambiar el color del ícono del menú de opciones es:

     <!-- android:textColorSecondary is the color of the menu overflow icon (three vertical dots) --> <item name="android:textColorSecondary">@color/optionMenuIconColor</item> 

    Añada encima de la línea de código al archivo del estilo .xml (tema de encargo), Esperanza usted consigue la respuesta, gracias.

    Esto funciona correctamente en mi caso:

     Drawable drawable = ContextCompat.getDrawable(getApplicationContext(), R.drawable.change_pass); toolbar.setOverflowIcon(drawable); 
    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.