He visto en la aplicación Inbox de Google, redactando un nuevo correo electrónico, en la barra de herramientas en lugar del botón de retroceso (una flecha) tiene un botón de "cerrar" (ver imagen).
¿Cómo puedo conseguir esto?
He visto en la aplicación Inbox de Google, redactando un nuevo correo electrónico, en la barra de herramientas en lugar del botón de retroceso (una flecha) tiene un botón de "cerrar" (ver imagen).
¿Cómo puedo conseguir esto?
Respuestas:
Utilizar
this.getSupportActionBar().setHomeAsUpIndicator(R.drawable.ic_action_close);
lograr esto.
Puede crear su propio icono de cierre u obtenerlo desde el icono de material design establecido en GitHub. Además, agregue esta línea antes de la línea anterior para que el cierre funcione como la flecha hacia atrás.
this.getSupportActionBar().setDisplayHomeAsUpEnabled(true);
Necesita definir un padre en el manifiesto, luego anular onSupportNavigationUp () si usa la barra de la aplicación de soporte, por supuesto. Además, vaya a este sitio útil para los paquetes de iconos: https://www.google.com/design/icons/
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.yourAwesomeLayout);
setupToolBar();
}
private void setupToolBar() {
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
if (toolbar == null) return;
setSupportActionBar(toolbar);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
getSupportActionBar().setHomeAsUpIndicator(R.drawable.ic_close_white_24dp);
}
@Override
public boolean onSupportNavigateUp() {
finish(); // close this activity as oppose to navigating up
return false;
}
onSupportNavigateUp()
? La documentación dice que es solo una bandera de éxito
lo siento por la respuesta tardía. Encontré la solución más fácil para ti . aquí sobre todo la respuesta no me funciona ( because i want to use toolbar not actionBar due to theming
). así que intente agregar el botón de cierre a través del diseño xml. y funciona.
aquí hay una sintaxis xml para agregar un botón de cierre a la barra de herramientas (v7).
app:navigationIcon="@drawable/ic_close_black_24dp"
@drawable/ic_close_black_24dp
viene
Una alternativa para definir la actividad principal en el manifiesto es manejar qué acción tomar en el método onOptionsItemSelected como en este ejemplo:
@Override
public boolean onOptionsItemSelected(MenuItem item){
switch (item.getItemId()) {
// Respond to the action bar's Up/Home/back button
case android.R.id.home:
finish();
break;
}
return super.onOptionsItemSelected(item);
}