Nuestro grupo de especialistas pasados muchos días de trabajo y recopilar de datos, encontramos la solución, nuestro deseo es que te resulte útil para tu proyecto.
Solución:
Si está utilizando un ActionBarActivity
entonces puedes decirle a Android que use el Toolbar
como el ActionBar
al igual que:
Toolbar toolbar = (Toolbar) findViewById(R.id.my_awesome_toolbar);
setSupportActionBar(toolbar);
Y luego llama a
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
getSupportActionBar().setDisplayShowHomeEnabled(true);
trabajará. También puede usar eso en Fragmentos que están adjuntos a ActionBarActivities
puedes usarlo así:
((ActionBarActivity) getActivity()).getSupportActionBar().setDisplayHomeAsUpEnabled(true);
((ActionBarActivity) getActivity()).getSupportActionBar().setDisplayShowHomeEnabled(true);
Si no estás usando ActionBarActivities
o si desea obtener la flecha hacia atrás en un Toolbar
eso no está configurado como tu SupportActionBar
entonces puedes usar lo siguiente:
mActionBar.setNavigationIcon(getResources().getDrawable(R.drawable.ic_action_back));
mActionBar.setNavigationOnClickListener(new View.OnClickListener()
@Override
public void onClick(View v)
//What to do on back clicked
);
Si estás usando android.support.v7.widget.Toolbar
entonces debe agregar el siguiente código a su AppCompatActivity
:
@Override
public boolean onSupportNavigateUp()
onBackPressed();
return true;
Veo muchas respuestas, pero aquí está la mía, que no se menciona antes. Funciona desde API 8+.
public class DetailActivity extends AppCompatActivity
@Override
protected void onCreate(Bundle savedInstanceState)
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_detail);
// toolbar
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
// add back arrow to toolbar
if (getSupportActionBar() != null)
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
getSupportActionBar().setDisplayShowHomeEnabled(true);
@Override
public boolean onOptionsItemSelected(MenuItem item)
// handle arrow click here
if (item.getItemId() == android.R.id.home)
finish(); // close this activity and return to preview activity (if there is any)
return super.onOptionsItemSelected(item);
Hay muchas formas de lograrlo, esta es mi favorita:
Diseño:
Actividad:
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
toolbar.setNavigationOnClickListener(new View.OnClickListener()
@Override
public void onClick(View v)
// back button pressed
);
Comentarios y calificaciones
Ten en cuenta dar visibilidad a esta noticia si te fue útil.