android sherlock actionbar菜单选中带有下划线,颜色变化的菜单项

时间:2012-12-16 21:41:58

标签: android menu

我正在使用ActionBarSherlock,我的ActionBar如图所示:

enter image description here

我想改变蓝色,例如绿色,我希望所选的菜单项带下划线(如图所示)。

我的main_menu.xml:

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<item
    android:id="@+id/item0"
    android:showAsAction="always"
    android:title="@string/menu_item0">
</item>
<item
    android:id="@+id/item1"
    android:showAsAction="always"
    android:title="@string/menu_item1">
</item>
<item
    android:id="@+id/item2"
    android:showAsAction="always"
    android:title="@string/menu_item2">
</item>
<item
    android:id="@+id/action_overflow"
    android:icon="@drawable/ic_action_overflow"
    android:showAsAction="always">
    <menu>
        <item android:id="@+id/contact" android:title="@string/submenu_0"/>
        <item android:id="@+id/info" android:title="@string/submenu_1"/>
        <item android:id="@+id/exit" android:title="@string/submenu_2"/>
    </menu>
</item>
</menu>

我该怎么办?在哪个档案?

1 个答案:

答案 0 :(得分:0)

不确定您是否仍然需要帮助,但要更改操作栏sherlock(abs)中操作栏的下划线,您只需要使用具有可伸展顶部的9-patch drawable替换操作栏的背景seciton和底部的颜色(如果你在abs示例代码中搜索'ad_tab_unselected_holo.png',你可以使用它,只需更改图像中的颜色)。

然后你需要把这个png和更改添加到你的style.xml中(注意我们正在改变android:background&amp; background以便向后兼容)。

<style name="CustomTheme" parent="Theme.Sherlock">    
    <item name="android:actionBarStyle">@style/Widget.Styled.ActionBar</item>
</style>

<style name="Widget.Styled.ActionBar" parent="Widget.Sherlock.Light.ActionBar">
    <item name="android:background">@drawable/ad_tab_unselected_holo</item>
    <item name="background">@drawable/ad_tab_unselected_holo</item>
</style>

然后,只需将清单中的此样式应用于您的活动,如下所示;

<activity
   android:label="@string/an_activity"
   android:name="com.sample.TestActivity"            
   android:theme="@style/CustomTheme"/>