volver poner pantalla movil instalar google descargar como chrome celular barra android android-actionbar appcompat

android - poner - ¿Cómo agregar el menú de desbordamiento a la barra de herramientas?



google toolbar chrome (3)

Defina un Menu para su Toolbar de Toolbar en la carpeta de recursos de res / menu , por ejemplo:

toolbar_menu.xml

<?xml version="1.0" encoding="utf-8"?> <menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" tools:context=".activity.MainActivity"> <item android:id="@+id/action_sign_out" android:title="@string/toolbar_sign_out" app:showAsAction="never"/> </menu>

La app:showAsAction="never" configuración app:showAsAction="never" garantiza que este elemento de menú no se muestre en la Toolbar , sino que se coloque en el menú de desbordamiento.

El tema de su Activity debe ser (o derivarse de) uno de los temas Theme.AppCompat.NoActionBar ( Theme.AppCompat.NoActionBar por ejemplo, o Theme.MaterialComponents.NoActionBar si está usando componentes materiales ).

En su Activity , configure su Toolbar :

Toolbar myToolbar = (Toolbar) findViewById(R.id.my_toolbar); setSupportActionBar(myToolbar);

Y anule onCreateOptionsMenu() para inflar su recurso de menú previamente definido:

@Override public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.toolbar_menu, menu); return true; }

Puede anular onOptionsItemSelected() para definir el comportamiento onClick de su (s) MenuItem (s):

@Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case R.id.action_sign_out: { // do your sign-out stuff break; } // case blocks for other MenuItems (if any) } return true; }

Estoy tratando de usar Android ActionBar en mi aplicación y tengo una opción que está oculta en el menú de desbordamiento.

Hay mucha documentación, pero es confusa porque la mayor parte de ella solo es relevante para versiones muy antiguas de Android, y cuando intentas aplicar los mismos conceptos, ya no funcionan o funcionan de manera diferente.

Esto está en mi diseño de Activity

<android.support.v7.widget.Toolbar android:id="@+id/my_toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:titleTextColor="@android:color/white" android:background="@color/colorPrimary" android:elevation="4dp" android:theme="@style/ThemeOverlay.AppCompat.ActionBar" app:popupTheme="@style/ThemeOverlay.AppCompat.Light"/>

Y esto está en el método onCreate() mi Activity .

// sets up activity toolbar Toolbar myToolbar = (Toolbar) findViewById(R.id.my_toolbar); setSupportActionBar(myToolbar); myToolbar.showOverflowMenu(); myToolbar.setTitleTextColor(R.color.lightPrimaryText);

También he intentado inflar un archivo xml del menú de onCreateOptionsMenu() , pero eso tampoco me dio los resultados que quería.


Sencillo, esto copia este código en su MainActivet`

@Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main2, menu); return true; } @Override public boolean onOptionsItemSelected(MenuItem item) { // Handle action bar item clicks here. The action bar will // automatically handle clicks on the Home/Up button, so long // as you specify a parent activity in AndroidManifest.xml. int id = item.getItemId(); //noinspection SimplifiableIfStatement if (id == R.id.action_settings) { Group gp=(Group)findViewById(R.id.order); return true; } return super.onOptionsItemSelected(item); }`

Ahora haga el archivo del Directorio para el nombre del menú para esto, vaya a Android_Studio-> app Folder-> Right_Click-> New-> Directory-> Enter name menu now Cree un archivo xml allí con menu2.xml name

y pasado este código en el archivo menu2.xml

<?xml version="1.0" encoding="utf-8"?> <menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto"> <item android:id="@+id/action_settings" android:orderInCategory="100" android:title="@string/action_settings" app:showAsAction="never" android:icon="@android:drawable/ic_input_add" /> </menu>

Si hay alguna consulta, por favor envíeme un mensaje de texto


en archivo manifiesto declarar

android:theme="@style/AppTheme.NoActionBar"

Me gusta esto :

<activity android:name=".ActivityName" android:label="@string/label" android:theme="@style/AppTheme.NoActionBar" />

y añade esto a tu estilo:

<style name="AppTheme.NoActionBar"> <item name="windowActionBar">false</item> <item name="windowNoTitle">true</item> </style>

y llama a esto en Activity onCreate ():

toolbar = (Toolbar) findViewById(R.id.toolbar); setSupportActionBar(toolbar);

anular este método en la actividad:

@Override public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.product_list, menu); //U can find item set icon and stuff... MenuItem item= menu.findItem(R.id.action_search); return true; }

y declare su menú así para el menú de desbordamiento:

<?xml version="1.0" encoding="utf-8"?> <menu > <group> <item android:id="@+id/sign_out" android:title="@string/sign_out" /> <item android:id="@+id/about" android:title="@string/about" /> </group> </menu>

y para la selección de elementos de mango llame a este

@Override public boolean onOptionsItemSelected(MenuItem item) { int id = item.getItemId(); switch (id) { case R.id.sign_out: //do stuff break; } return super.onOptionsItemSelected(item); }

hecho :)