ActionBar徽标向左移动

时间:2015-08-05 09:13:25

标签: android xml android-actionbar drawerlayout

我想在actionBar上使用logo而不是homeAsUp来打开drawerLayout,我设法做到了,但似乎homeAsUp的空间已经离开了,所以它看起来像logo已经leftMargin。

这就是我所做的:
     style.xml

<item name="android:logo">@drawable/logo_file</item> 
<item name="android:displayOptions">showHome|useLogo</item>

logo_file.xml

    <?xml version="1.0" encoding="utf-8"?>
<layer-list
    xmlns:android="http://schemas.android.com/apk/res/android">
    <item
        android:drawable="@drawable/mylogo"
        android:left="-10dp"
</layer-list>

活动

getActionBar().setHomeButtonEnabled(true);
getActionBar().setDisplayUseLogoEnabled(true);

执行android:left="-10dp"无法解决只从徽标左侧删除10dp的问题。

所以请帮我把徽标移开。

1 个答案:

答案 0 :(得分:1)

我倾向于在活动的onCreate方法中执行以下操作。

ActionBar ab = getSupportActionBar();
ab.setDisplayUseLogoEnabled(true);
ab.setDisplayShowHomeEnabled(true);
ab.setDisplayShowHomeEnabled(false);
ab.setHomeAsUpIndicator(R.drawable.logo_actionbar); //this is your app logo or whatever youre using
ab.setDisplayHomeAsUpEnabled(true);

只要徽标被正确裁剪,它就会按预期布局,而不必担心填充和偏移,但如果您使用抽屉there is a great sample on the android website,它会显示如何正确设置绘图切换< / p>