studio poner example colocar boton bar agregar android android-actionbar

poner - ¿Cómo muestro los elementos del menú Desbordamiento en la barra de acción en Android



poner toolbar android studio (7)

Dentro de AndroidManifest.xml entre agregar

android:theme="@android:style/Theme.Holo.Light"

lo que añade la barra de acción en su aplicación.

Después de eso, vaya a menu.xml y agregue lo siguiente

xmlns:tools="http://schemas.android.com/tools

entre finalmente en cada elemento agregar

android:showAsAction="always" tools:ignore="AppCompatResource"

Estoy escribiendo una aplicación para Android en la que estoy tratando de mostrar elementos de menú de desbordamiento en ActionBar

usando este gran enlace tutorial: http://wptrafficanalyzer.in/blog/adding-action-items-and-overflow-menu-items-to-action-bar-in-android/

Problema:

Not getting Overflow Menu Items (Icon)

Vea a continuación la captura de pantalla para más claridad:

Manifest.xml:

<uses-sdk android:minSdkVersion="14" /> <application android:icon="@drawable/ic_launcher" android:label="@string/app_name" > <activity android:name=".MainActivity" android:label="@string/app_name" android:uiOptions="splitActionBarWhenNarrow" >

items.xml:

<?xml version="1.0" encoding="utf-8"?> <menu xmlns:android="http://schemas.android.com/apk/res/android" > <item android:id="@+id/phone" android:title="@string/phone" android:icon="@drawable/phone" android:showAsAction="ifRoom|withText" /> <item android:id="@+id/computer" android:title="@string/computer" android:icon="@drawable/computer" android:showAsAction="ifRoom|withText" /> <item android:id="@+id/gamepad" android:title="@string/gamepad" android:icon="@drawable/gamepad" android:showAsAction="ifRoom|withText" /> <item android:id="@+id/camera" android:title="@string/camera" android:icon="@drawable/camera" android:showAsAction="ifRoom|withText" /> <item android:id="@+id/video" android:title="@string/video" android:icon="@drawable/video" android:showAsAction="ifRoom|withText" /> <item android:id="@+id/email" android:title="@string/email" android:icon="@drawable/email" android:showAsAction="ifRoom|withText" /> </menu>

Estoy usando este tutorial y tratando de hacer la Figura 6: Elementos de acción y menú Desbordamiento en la barra de acción dividida

Por favor, ayúdame a mostrar los elementos del menú de desbordamiento (ICONO) en la barra de acción

Ahora, cada vez que hago clic en el botón Menú en el emulador, obtengo elementos del menú de descanso ...


Esto podría ser otro trabajo alrededor, lo que realmente me ayudó. Conserve uno que se pueda dibujar con tres puntos y délo como elemento de menú.

<menu xmlns:android="http://schemas.android.com/apk/res/android" > <item android:id="@+id/saveDetails" android:showAsAction="always" android:title="@string/save"/> <item android:id="@+id/menu_overflow" android:icon="@drawable/dts" android:orderInCategory="11111" android:showAsAction="always"> <menu> <item android:id="@+id/contacts" android:showAsAction="never" android:title="Contacts"/> <item android:id="@+id/service_Tasks" android:showAsAction="never" android:title="Service Tasks"/> <item android:id="@+id/charge_summary" android:showAsAction="never" android:title="Charge Summary"/> <item android:id="@+id/capture_signature" android:showAsAction="never" android:title="Capture Signature"/> </menu> </item> </menu>


Los teléfonos que tienen botón de hardware del menú muestran elementos de menú adicionales al hacer clic en el botón de hardware. Los teléfonos más nuevos, sin botón de menú de hardware, agregan automáticamente un icono de menú de Desbordamiento a la Barra de acción. Los elementos de menú adicionales son aquellos que tienen la propiedad "showAsAction" establecida en nunca.


Para mostrar el icono de tres puntos, a la barra de acción, solo use el método de abajo en su OnCreate ():

private void getOverflowMenu() { try { ViewConfiguration config = ViewConfiguration.get(this); Field menuKeyField = ViewConfiguration.class.getDeclaredField("sHasPermanentMenuKey"); if(menuKeyField != null) { menuKeyField.setAccessible(true); menuKeyField.setBoolean(config, false); } } catch (Exception e) { e.printStackTrace(); } }


Si entiendo su pregunta correctamente y desea mostrar todos sus iconos en la barra de acción, cambie estos parámetros en los elementos de su menú

android:showAsAction="ifRoom|withText"

a esto

android:showAsAction="always"


Si está utilizando bibliotecas compatibles, para mostrar los elementos del menú en la barra de acción, debe usar la siguiente sintaxis en su xml:

yourappname:showAsAction="ifRoom|withText"


Solo para decir que si su dispositivo tiene un botón de menú, el icono de desbordamiento no se mostrará, en los teléfonos más nuevos se mostrará el botón de desbordamiento. No recomendaría la respuesta de ASMUIRTI ya que es un truco horrible que rompe la coherencia con el resto de las aplicaciones en la plataforma.

debes usar

android:showAsAction="never"

y deje que el dispositivo Android decida si el menú de desbordamiento es necesario para ese dispositivo.