- res → nuevo directorio de recursos → haga clic en el menú como tipo → carpeta de menú creada (si el nombre del directorio es menú)
- carpeta de menú → archivo de origen del menú → crear menú.xml
Una vez que haya creado menu.xml, es hora de agregarlo articulo, que es el menú que ve cuando hace clic en el menú de opciones. el artículo debe tener una identificación para poder usarse en java.
tú hAñada una ID para usarla posteriormente en Java y el nombre es para el texto que ve.
Ahora nos trasladaremos a MainActivity.java para usar este menú. Estoy tratando de cambiar el color de fondo aquí cuando hago clic en cada elemento (rojo, amarillo, verde).
a continuación, necesitamos dos métodos.
@Override
public boolean onCreateOptionsMenu(Menu menu) {
return super.onCreateOptionsMenu(menu);
} @Override
public boolean onOptionsItemSelected(@NonNull MenuItem item) {
return super.onOptionsItemSelected(item);
}
Para instanciar archivos de menú XML en objetos de menú, necesitamos MenuInflater clase. creamos una variable llamada infladory deberíamos llamar inflar (opciones del menú del archivo fuente, tipo); método de inflado del inflador.
@Override
public boolean onCreateOptionsMenu(Menu menu) {
super.onCreateOptionsMenu(menu);
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.bg_changer, menu);
return true;
}
Finalmente, obtenemos la identificación para cada elemento y establecemos el valor backgroundColor usando switch () (o if () si lo desea)
@Override
public boolean onOptionsItemSelected(@NonNull MenuItem item) {
switch (item.getItemId()){
case R.id.red:
layout1.setBackgroundColor(Color.RED);
break;
case R.id.yellow:
layout1.setBackgroundColor(Color.YELLOW);
break;
case R.id.green:
layout1.setBackgroundColor(Color.GREEN);
break;
}
return super.onOptionsItemSelected(item);
}