如何在动作栏上显示徽标

时间:2015-03-04 13:06:00

标签: android android-actionbar

我想在我的操作栏活动上显示徽标,我在清单中使用了以下代码:

        <activity
            android:name=".CompanyActivity"
            android:icon="@drawable/ic_launcher"
            android:logo="@drawable/ic_launcher"
            android:label="@string/title"
            android:screenOrientation="portrait"
            android:theme="@style/Theme.AppCompat.Light.DarkActionBar" >
        </activity>

并且在onCreate活动方法中也使用java中的以下代码:

getSupportActionBar().setIcon(R.drawable.ic_launcher);

ActionBar ab = getSupportActionBar();
ab.setLogo(R.drawable.ic_launcher);

但徽标未显示在操作栏中。我能做什么? tnx很多

3 个答案:

答案 0 :(得分:5)

Lollipop默认情况下不显示徽标,因此设置:

 getSupportActionBar().setDisplayShowHomeEnabled(true);
 getSupportActionBar().setLogo(R.drawable.ic_launcher);
 getSupportActionBar().setDisplayUseLogoEnabled(true);

答案 1 :(得分:0)

如果您想在操作栏中显示徽标

在main.xml中

 <item 
    android:id="@+id/abc_image"
    android:title="abc"
    android:icon="@drawable/abcImage"
    android:showAsAction="always"/>
<item
    android:id="@+id/bb"
    android:title="second"
    android:icon="@drawable/bbImage"
    app:showAsAction="always"/>

在MainActivity中

    getActionBar().setCustomView(R.layout.actionbar);
    getActionBar().setDisplayShowCustomEnabled(true);
    getActionBar().setDisplayUseLogoEnabled(true);
    getActionBar().setDisplayShowHomeEnabled(false);
    getActionBar().setHomeButtonEnabled(true);

答案 2 :(得分:0)

对于targetSDKversion API 21,在您的活动onCreate(...)

setSupportActionBar(your_toolbar); 
getSupportActionBar().setIcon(R.drawable.ic_launcher);

对于低于API 21的targetSDKversion,在AndroidManifest中:

<application
    ... ...
    android:logo="@drawable/ic_launcher"
    ... ...

</application>