更新SDK API22未显示应用程序图标后,操作栏主题颜色更改为默认值

时间:2015-07-07 08:53:57

标签: android eclipse android-actionbar-compat appcompat-v7-r22.1

我在Eclipse中将SDK API 20 更新为 API 22

更新我的Sdk后我从其他工作区导入我的项目

问题:

  1. 我的应用程序中的操作栏应用程序图标未显示

  2. 我已经在Themes.xml中设置了不显示的主题颜色。它更改为默认黑色

  3. 它更改了我的应用程序的完整结构。在更新之前它工作正常。

    请有人帮我解决这个问题。

    的manifest.xml

    <application
            android:allowBackup="true"
            android:icon="@drawable/logo"
            android:label="@string/app_name"
            android:largeHeap="true"
            android:theme="@style/CustomActionBarTheme" >
    
    
            <activity
                android:name="com.example.Start"
                android:label="@string/app_name"
                android:screenOrientation="portrait" >
                <intent-filter>
                    <action android:name="android.intent.action.MAIN" />
    
                    <category android:name="android.intent.category.LAUNCHER" />
                </intent-filter>
            </activity>
     </application>
    

    的themes.xml

    <?xml version="1.0" encoding="utf-8"?>
    <resources>
    
        <!-- the theme applied to the application or activity -->
        <style name="CustomActionBarTheme" parent="@style/Theme.AppCompat.Light.DarkActionBar">
            <item name="android:actionBarStyle">@style/MyActionBar</item>
            <item name="android:actionBarTabStyle">@style/MyActionBarTabs</item>
    
            <!-- Support library compatibility -->
    
            <item name="android:actionBarTabTextStyle">@style/MyTheme.ActionBar.TabText</item>
             <item name="android:actionBarTabBarStyle">@style/Divider</item>
        </style>
    
    <!-- for Tab divider -->
    <style name="Divider" parent="@android:style/Widget.Holo.ActionBar.TabBar">
        <item name="android:divider">@android:color/transparent</item> //or use your transparent drawable image
        <item name="android:showDividers">middle</item>
        <item name="android:dividerPadding">0dp</item>
    </style>
    
        <!-- ActionBar styles -->
        <style name="MyActionBar" parent="@style/Widget.AppCompat.Light.ActionBar.Solid.Inverse">
            <item name="android:background">@color/easy</item>
            <!-- Support library compatibility -->
            <item name="background">@color/easy</item>
        </style>
    
        <style name="MyActionBarTabs" parent="@style/Widget.AppCompat.ActionBar.TabView">
            <item name="android:background">@drawable/actionbar_tab_indicator</item>
        </style>
    
        <style name="MyTheme.ActionBar.TabText" parent="android:style/Widget.Holo.ActionBar.TabText">
    
            <!-- This is a Black text color when selected and a WHITE color otherwise -->
            <item name="android:textColor">@color/selector_tab_text</item>
        </style>
    
    </resources>
    

1 个答案:

答案 0 :(得分:2)

我遇到了同样的问题。

显示图标使用:

getSupportActionBar().setIcon(R.drawable.ic_your_icon);

在您的活动onCreate()

对于颜色添加:

<item name="colorPrimary">@color/your_color</item>

到“CustomActionBarTheme”(不是“MyActionBar”!)

你的主题应该是这样的:

<style name="CustomActionBarTheme" parent="@style/Theme.AppCompat.Light.DarkActionBar">
        <item name="android:actionBarStyle">@style/MyActionBar</item>
        <item name="android:actionBarTabStyle">@style/MyActionBarTabs</item>
        <item name="colorPrimary">@color/your_color</item><!--put your color here-->
        <!-- Support library compatibility -->

        <item name="android:actionBarTabTextStyle">@style/MyTheme.ActionBar.TabText</item>
         <item name="android:actionBarTabBarStyle">@style/Divider</item>
    </style>

你的theme.xml中的其他内容保持不变