Eliminar icono / logotipo de la barra de acciones en Android

He estado tratando de encontrar alguna manera de eliminar el icono / logotipo de la barra de acciones, pero lo único que encontré después de una hora de búsqueda SO, la documentación de Android y Google es cómo eliminar la barra de título en su totalidad. Eso no es lo que quiero. Solo desea eliminar el icono / logotipo de la barra de título.

¿Alguien sabe cómo lograr esto? Preferiblemente me gustaría hacer esto en XML .

Si ha definido android:logo="..." en la etiqueta de su AndroidManifest.xml , entonces necesita usar esto para ocultar el ícono:

tema pre-v11

 @android:color/transparent 

v11 y arriba tema

 @android:color/transparent 

El uso de estos dos estilos ha ocultado correctamente el ícono de la barra de acción en un dispositivo 2.3 y 4.4 para mí (esta aplicación usa AppCompat ).

Agregue el siguiente código en sus estilos de barra de acciones:

 showHome|homeAsUp|showTitle showHome|homeAsUp|showTitle @android:color/transparent  

PD: estoy usando Actionbar Sherlock y esto funciona bien.

Si no desea que el ícono se encuentre en actividad particular.

 getActionBar().setIcon( new ColorDrawable(getResources().getColor(android.R.color.transparent))); 

Esto funcionó para mí

 getActionBar().setDisplayShowHomeEnabled(false); 

Vocación

 mActionBar.setDisplayHomeAsUpEnabled(true); 

además de,

 mActionBar.setDisplayShowHomeEnabled(false); 

ocultará el logotipo pero mostrará el ícono Inicio Como Arriba. 🙂

Sé consciente de:

 @android:color/transparent 

También hará que sus opciones sean transparentes.

  //disable application icon from ActionBar getActionBar().setDisplayShowHomeEnabled(false); //disable application name from ActionBar getActionBar().setDisplayShowTitleEnabled(false); 
 getActionBar().setIcon(android.R.color.transparent); 

Esto funcionó para mí.

Eliminar o mostrar el título usando:

 getActionBar().setDisplayShowTitleEnabled(true); 

Eliminar o mostrar el logotipo usando:

 getActionBar().setDisplayUseLogoEnabled(false); 

Eliminar todo:

 getActionBar().setDisplayShowHomeEnabled(false); 

también puede agregar el código siguiente en AndroidManifest.xml .

 android:icon="@android:color/transparent" 

Funcionará bien.

Pero descubrí que esto genera un problema ya que el icono del iniciador también se vuelve transparente.

Entonces usé:

 getActionBar().setIcon(new ColorDrawable(getResources().getColor(android.R.color.transparent))); 

y funcionó bien.

Pero si tiene más de una actividad y desea hacer que el icono de una actividad sea transparente, el enfoque anterior funcionará.

Usé esto y funcionó para mí.

  getActionBar().setIcon( new ColorDrawable(getResources().getColor(android.R.color.transparent))); 
 getActionBar().setIcon(new ColorDrawable(getResources().getColor(android.R.color.transparent))); getActionBar().setDisplayHomeAsUpEnabled(true); 

Creo que la respuesta exacta es: para api 11 o superior:

 getActionBar().setDisplayShowHomeEnabled(false); 

de otra manera:

 getSupportActionBar().setDisplayShowHomeEnabled(false); 

(porque necesita una biblioteca de soporte)

ir a su manifiesto y encontrar la etiqueta de la aplicación

  android:icon="@android:color/transparent"// simply add this on place of your icon 

….. … …

La respuesta de Qiqi Abaziz está bien, pero todavía me costaba mucho conseguir que funcionara con el paquete de compatibilidad y aplicar el estilo a los elementos correctos. Además, el hack de transparencia es innecesario. Así que aquí hay un ejemplo completo que funciona para v8 y arriba:

values ​​\ styles.xml

      

AndroidManifest.xml (shell)

        

Vaya a su manifiesto y encuentre su actividad, luego agregue este código:

 android:theme="@android:style/Theme.NoTitleBar" 

encima de la línea, oculte su Actionbar .

Si necesita otra característica, puede ver otras opciones con (CLR + SPC).

La manera más rápida es modificar su Manifest.xml. Si, por ejemplo, desea eliminar el logotipo de la actividad “Actividad” y dejar el logotipo en otras actividades, puede hacer lo siguiente:

   

getSupportActionBar().setDisplayShowHomeEnabled(false); en tu actividad

Ex:

 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_layout); //in this line getSupportActionBar().setDisplayShowHomeEnabled(false); }