2015-09-07 68 views
1

我实现了一个主题为我的动作条:Android的动作条标志不显示

<style name="MyTheme" 
    parent="@style/Theme.AppCompat.Light.DarkActionBar"> 
    <item name="android:actionBarStyle">@style/MyActionBar</item> 
    <item name="actionBarStyle">@style/MyActionBar</item> 
</style> 

<style name="MyActionBar" parent="@style/Widget.AppCompat.Light.ActionBar"> 
    <item name="android:background">@color/actionbar_background</item> 
    <item name="android:displayOptions">useLogo|showHome</item> 
    <item name="android:logo">@mipmap/ic_launcher</item> 
    <item name="logo">@mipmap/ic_launcher</item> 
    <item name="background">@color/actionbar_background</item> 
</style> 

而且我申请它AndroidManifest.xml

<application 
    android:allowBackup="true" 
    android:icon="@mipmap/ic_launcher" 
    android:label="@string/app_name" 
    android:theme="@style/MyTheme"> 
... 

我知道,我的题材的作品,我看到一个颜色改变,但是我的操作栏图标永远不会显示。我看到它,只有当我调用这个代码在我的活动onCreate方法:

ActionBar actionBar = getSupportActionBar(); 
    actionBar.setLogo(R.mipmap.ic_launcher); 
    actionBar.setDisplayUseLogoEnabled(true); 
    actionBar.setDisplayShowHomeEnabled(true); 

我觉得这是不正确的复制粘贴相同的代码的每个活动。请帮我解决这个问题。

+0

您在运行上棒糖? – Johan

+0

@Johan是的,没错 – Andrei

+0

好吧,棒棒糖(阅读材料)不会在'ActionBar' /'工具栏'中显示图标,这是其设计指南的一部分。 – Johan

回答

0

这是更好地使用android.support.v7.widget.Toolbar,你可以设置你的应用程序的操作栏,如下所示:

Toolbar toolbar = (Toolbar) findViewById(R.id.apptoolbar); 
setSupportActionBar(toolbar); 
toolbar.setNavigationIcon(R.drawable.your_app_logo); 

获取更多信息,您可以在Structure Of App Bar阅读(这是所谓的动作条)