Remove icon/logo from action bar on android

AndroidXmlAndroid LayoutAndroid ActionbarTitlebar

Android Problem Overview


I've been trying to find some way of removing the icon/logo from the action bar but the only thing I've found after an hour of searching SO, Android's documentation and Google is how to remove the title bar in whole. That is not what I want. Only want to remove the icon/logo from the title bar.

Any one know how to accomplish this? Preferably I'd like to do this in XML.

Android Solutions


Solution 1 - Android

Add the following code in your action bar styles:

<item name="android:displayOptions">showHome|homeAsUp|showTitle</item>
<item name="displayOptions">showHome|homeAsUp|showTitle</item>
<item name="android:icon">@android:color/transparent</item> <!-- This does the magic! -->

PS: I'm using Actionbar Sherlock and this works just fine.

Solution 2 - Android

If you do not want the icon in particular activity.

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

Solution 3 - Android

If you've defined android:logo="..." in the <application> tag of your AndroidManifest.xml, then you need to use this stuff to hide the icon:

pre-v11 theme

<item name="logo">@android:color/transparent</item>

v11 and up theme

<item name="android:logo">@android:color/transparent</item>

The use of these two styles has properly hidden the action bar icon on a 2.3 and a 4.4 device for me (this app uses AppCompat).

Solution 4 - Android

This worked for me

getActionBar().setDisplayShowHomeEnabled(false);

Solution 5 - Android

Calling

mActionBar.setDisplayHomeAsUpEnabled(true);

in addition to,

mActionBar.setDisplayShowHomeEnabled(false);

will hide the logo but display the Home As Up icon. :)

Solution 6 - Android

Be aware that:

<item name="android:icon">@android:color/transparent</item>

Will also make your options items transparent.

Solution 7 - Android

	//disable application icon from ActionBar
	getActionBar().setDisplayShowHomeEnabled(false);

	//disable application name from ActionBar
	getActionBar().setDisplayShowTitleEnabled(false);

Solution 8 - Android

getActionBar().setIcon(android.R.color.transparent);

This worked for me.

Solution 9 - Android

Remove or show the title using:

getActionBar().setDisplayShowTitleEnabled(true);

Remove or show the logo using:

getActionBar().setDisplayUseLogoEnabled(false);

Remove all:

getActionBar().setDisplayShowHomeEnabled(false);

Solution 10 - Android

you can also add below code in AndroidManifest.xml.

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

It will work fine.

But I found that this gives a problem as the launcher icon also become transparent.

So I used:

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

and it worked fine.

But if you are having more than one activity and want to make the icon on an activity transparent then the previous approach will work.

Solution 11 - Android

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

Solution 12 - Android

I used this and it worked for me.

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

Solution 13 - Android

I think the exact answer is: for api 11 or higher:

getActionBar().setDisplayShowHomeEnabled(false);

otherwise:

getSupportActionBar().setDisplayShowHomeEnabled(false);

(because it need a support library.)

Solution 14 - Android

go to your manifest an find the application tag

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

..... ... ...

Solution 15 - Android

Qiqi Abaziz's answer is ok, but I still struggled for a long time getting it to work with the compatibility pack and to apply the style to the correct elements. Also, the transparency-hack is unneccessary. So here is a complete example working for v8 and up:

values\styles.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <style name="MyActivityTheme" parent="@style/Theme.AppCompat">
        <item name="actionBarStyle">@style/NoLogoActionBar</item> <!-- pre-v11-compatibility -->
        <item name="android:actionBarStyle">@style/NoLogoActionBar</item>
    </style>
    <style name="NoLogoActionBar" parent="@style/Widget.AppCompat.ActionBar">
        <item name="displayOptions">showHome</item> <!-- pre-v11-compatibility -->
        <item name="android:displayOptions">showHome</item>
    </style>
</resources>

AndroidManifest.xml (shell)

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android">   
    <uses-sdk android:minSdkVersion="8" android:targetSdkVersion="19"/>
    <application android:theme="@android:style/Theme.Light.NoTitleBar">
        <activity android:theme="@style/PentActivityTheme"/>
    </application>
</manifest>

Solution 16 - Android

Go in your manifest and find the your activity then add this code:

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

above line hide your Actionbar .

If you need to other feature you can see other options with (CLR + SPC).

Solution 17 - Android

The fastest way is to modify your Manifest.xml. If for example you want to remove the logo of activity "Activity", and leave the logo in other activities, you can do the following:

<activity
      android:name=".home.XActivity"
      android:logo="@android:color/transparent"
      android:configChanges="orientation|keyboardHidden" />
 <activity
      android:name=".home.HomeActivity"
      android:configChanges="orientation|keyboardHidden" />

Solution 18 - Android

None of the above worked.

But this did the trick:

override fun onCreate() {
    setContentView(R.layout.activity_main)

    setSupportActionBar(toolbar)
    toolbar.logo = null
    

(removed icon from toolbar)

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionHrafnView Question on Stackoverflow
Solution 1 - AndroidQiqi AbazizView Answer on Stackoverflow
Solution 2 - AndroidLakshView Answer on Stackoverflow
Solution 3 - AndroidCharles MadereView Answer on Stackoverflow
Solution 4 - AndroidBruneView Answer on Stackoverflow
Solution 5 - AndroidAtul O HolicView Answer on Stackoverflow
Solution 6 - AndroidTevlonView Answer on Stackoverflow
Solution 7 - AndroidPawel MiechowieckiView Answer on Stackoverflow
Solution 8 - Androiddn_cView Answer on Stackoverflow
Solution 9 - AndroidTiago GouvêaView Answer on Stackoverflow
Solution 10 - AndroidSamView Answer on Stackoverflow
Solution 11 - Androiduser3748515View Answer on Stackoverflow
Solution 12 - Androiduser2900761View Answer on Stackoverflow
Solution 13 - AndroidDavidView Answer on Stackoverflow
Solution 14 - AndroidAvinash Ajay PandeyView Answer on Stackoverflow
Solution 15 - AndroidNilzorView Answer on Stackoverflow
Solution 16 - AndroidA.AView Answer on Stackoverflow
Solution 17 - AndroidJordi AlonsoView Answer on Stackoverflow
Solution 18 - AndroidDan AlboteanuView Answer on Stackoverflow