设置Activity的徽标和使用ActionBarSherlock时选择的大小错误

时间:2013-01-27 15:23:08

标签: android android-actionbar actionbarsherlock

我遇到了actiobar上所选徽标颜色的问题。如下面的屏幕截图所示,选择不会从操作栏的开头开始,它实际上超出了图像本身。图像在分隔符后结束2px,但选择范围比此更远。

我在清单中设置了android:logo =“@ drawable / ic_action_menu”的图标,我正在使用ActionBarSherlock。我检查了自定义样式,找不到任何可能导致这种情况的内容。将主页图标显示为up时,所有子活动都能正常工作。

任何帮助都会非常感激!

我的一些相关代码:

protected void actionBarSetup() {
    ActionBar ab = getSupportActionBar();
    ab.setDisplayShowTitleEnabled(true);
    ab.setHomeButtonEnabled(true);
}

  <activity
        android:name="MainActivityWrapper"
        android:configChanges="orientation|keyboardHidden|screenSize"
        android:icon="@drawable/ic_action_menu"            
        android:label="@string/title_main"
        android:launchMode="singleTop" >
    </activity>

如果可能相关,我也在使用SlidingMenu库。

enter image description here

2 个答案:

答案 0 :(得分:1)

似乎代码的某些部分在这里为“向上箭头”(即绘制选择的那个)留下了一些空间,而代码的另一部分则没有(即绘制图像本身的那个)。你可以发布Activity和onCreate()方法的清单部分吗?

答案 1 :(得分:0)

实际上我自己找到了一个解决方案。

<style name="Theme.MyApp.NoUp" parent="@style/Theme.MyAppTheme">
    <item name="android:homeAsUpIndicator">@android:color/transparent</item>
</style>

这将隐藏向上指示符,然后选择将按预期工作。然后,我将此主题仅应用于具有菜单按钮的活动。

<activity
        android:name="MainActivityWrapper"
        android:configChanges="orientation|keyboardHidden|screenSize"
        android:theme="@style/Theme.MyApp.NoUp"
        android:icon="@drawable/title_icon"
        android:label="@string/live_menu_choice"
        android:launchMode="singleTop" >
    </activity>