SetHomeButtonEnabled no funciona, pero setDisplayHomeAsUpEnabled está funcionando
Quiero agregar el icono de la aplicación en la barra de acción para todas las actividades de mi aplicación y en el icono de clic, me gustaría navegar a la página principal de mi aplicación.
He intentado con el siguiente código en onCreate
ActionBar actionBar = getSupportActionBar(); actionBar.setLogo(R.drawable.ic_launcher); actionBar.setDisplayUseLogoEnabled(true); actionBar.setDisplayShowHomeEnabled(true); actionBar.setHomeButtonEnabled(true);
Ahora el ícono de la aplicación viene en la barra de acción, pero al hacer clic en él, onOptionsItemSelected no se recibe. Pero si usa actionBar.setDisplayHomeAsUpEnabled (true) en lugar de actionBar.setHomeButtonEnabled (true), onOptionsItemSelected se llama con item.getItemId (). A continuación se muestra el fragmento de código
ActionBar actionBar = getSupportActionBar(); actionBar.setLogo(R.drawable.ic_launcher); actionBar.setDisplayUseLogoEnabled(true); actionBar.setDisplayShowHomeEnabled(true); actionBar.setDisplayHomeAsUpEnabled(true);
La documentación dice que usando setDisplayHomeAsUpEnabled y setHomeButtonEnabled, se llamará onOptionsItemSelected y la única diferencia es la flecha hacia arriba. No necesito la flecha hacia arriba en la barra de acción, solo necesito el icono de la aplicación. ¿Cómo se puede hacer eso?
Mi minSdkVersion 14 y targetSdkVersion 21.
Desde http://developer.android.com/reference/android/app/ActionBar.html#setHomeAsUpIndicator(int)
Puedes usar:
actionBar.setHomeAsUpIndicator(R.drawable.ic_launcher); actionBar.setDisplayShowHomeAsUpEnabled(true);
Y esto debe reemplazar la flecha hacia atrás con su icono
Usted puede utilizar esto:
Toolbar toolbar = (Toolbar) findViewById(R.id.myToolbar); toolbar.setNavigationIcon(R.drawable.ic_back); setSupportActionBar(toolbar); toolbar.setNavigationOnClickListener(new View.OnClickListener(){ @Override public void onClick(View view){ finish(); } });