【问题标题】:Custom theme ActionBar android (menu not working)自定义主题 ActionBar android(菜单不起作用)
【发布时间】:2013-10-07 16:28:53
【问题描述】:

我想自定义我的应用并应用了主题,但选项菜单似乎没有应用我的主题。

我希望我的文本颜色为白色,背景为黑色,突出显示/选定的菜单项为黄色。 这是我的 theme.xml:

<style name="CustomActionBarTheme" parent="@style/Theme.AppCompat.Light.DarkActionBar">
    <item name="android:actionBarStyle">@style/MyActionBar</item>
    <item name="android:actionBarTabTextStyle">@style/MyActionBarTabText</item>
    <item name="android:actionMenuTextColor">@color/application_color5</item>
    <item name="android:actionBarTabStyle">@style/MyActionBarTabs</item>
    <item name="android:selectableItemBackground">@drawable/icone_barratopo_selector</item>
    <item name="android:actionBarItemBackground">@drawable/icone_barratopo_selector</item>
    <item name="android:selectableItemBackground">@drawable/icone_barratopo_selector</item>
    <!-- Panel attributes -->
    <!-- <item name="android:panelBackground">@drawable/selectable_background</item> --


    <!-- Support library compatibility -->
    <item name="actionBarStyle">@style/MyActionBar</item>
    <item name="actionBarTabTextStyle">@style/MyActionBarTabText</item>
    <item name="actionMenuTextColor">@color/application_color5</item>
    <item name="actionBarTabStyle">@style/MyActionBarTabs</item>
    <item name="selectableItemBackground">@drawable/icone_barratopo_selector</item>
    <item name="actionBarItemBackground">@drawable/icone_barratopo_selector</item>
    <item name="selectableItemBackground">@drawable/icone_barratopo_selector</item>
</style>

<!-- ActionBar styles -->
<style name="MyActionBar" parent="@style/Widget.AppCompat.Light.ActionBar.Solid.Inverse">
    <item name="android:background">@drawable/background_barratopo_superior</item>
    <item name="android:titleTextStyle">@style/MyActionBarTitleText</item>

    <!-- Support library compatibility -->
    <item name="background">@drawable/background_barratopo_superior</item>
    <item name="titleTextStyle">@style/MyActionBarTitleText</item>
</style>

<!-- ActionBar title text -->
<style name="MyActionBarTitleText" parent="@style/TextAppearance.AppCompat.Widget.ActionBar.Title">
    <item name="android:textColor">@color/application_color2</item>
</style>

<!-- ActionBar tabs text -->
<style name="MyActionBarTabText" parent="@style/Widget.AppCompat.ActionBar.TabText">
    <item name="android:textColor">@drawable/tab_text_selector</item>
</style>

<!-- ActionBar tabs styles -->
<style name="MyActionBarTabs" parent="@style/Widget.AppCompat.ActionBar.TabView">

    <!-- tab indicator -->
    <item name="android:background">@drawable/actionbar_tab_indicator</item>

    <!-- Support library compatibility -->
    <item name="background">@drawable/actionbar_tab_indicator</item>
</style>

我的 menu.xml:

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:motobox="http://schemas.android.com/apk/res-auto" >

<!--
      <item
    android:id="@+id/option_availability"
    android:icon="@drawable/icone_barratopo_mymotobox"
    android:orderInCategory="100"
    motobox:showAsAction="always"/>
-->
<item
    android:id="@+id/option_refresh"
    android:icon="@drawable/icone_barratopo_back"
    android:orderInCategory="100"
    motobox:showAsAction="always"/>
<item
    android:id="@+id/status"
    android:orderInCategory="100"
    android:title="Indisponível"
    motobox:showAsAction="never"/>
<item
    android:id="@+id/logout"
    android:orderInCategory="100"
    android:title="Logout"
    motobox:showAsAction="never"/>

还有我的 selector.xml:

<selector xmlns:android="http://schemas.android.com/apk/res/android">

<item android:drawable="@color/application_color3" android:state_focused="false" android:state_pressed="false" android:state_selected="false"/>

<!-- Pressed -->
<item android:drawable="@color/application_color2" android:state_pressed="true"/>

<!-- Focused -->
<item android:drawable="@color/application_color2" android:state_focused="true" android:state_pressed="false" android:state_selected="false"/>

【问题讨论】:

    标签: android android-actionbar android-theme android-menu


    【解决方案1】:

    将您的文件从 theme.xml 重命名为

    res/values/themes.xml
    

    记住你可以将你的主题应用到你的整个应用中

    <application android:theme="@style/myCustomTheme">
    

    或个人活动

    <activity android:theme="@android:style/myCustomTheme">
    

    【讨论】:

      【解决方案2】:

      编辑该行:

      <item name="background">@drawable/actionbar_tab_indicator</item>
      

      <item name="android:background">@drawable/actionbar_tab_indicator</item>
      

      :)

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-07-18
        • 1970-01-01
        • 1970-01-01
        • 2011-10-15
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多