簡體   English   中英

Android 自定義操作欄未顯示

[英]Android custom action bar is not showing

我的父主題是 Theme.AppCompat.Light.DarkActionBar 並且我添加了清單文件並為具有不同顏色的操作欄創建了自定義 style.xml 但不是全部,操作欄不可見我該怎么辦? 我正在使用 android studio 和 lolipop 版本。

樣式文件

<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
    <item name="android:windowActionBar">true</item>
</style>

<style name="CustomActionBarTheme"
    parent="@style/Theme.AppCompat.Light">
    <item name="android:actionBarStyle">@style/MyActionBar</item>

</style>
<style name="MyActionBar"
    parent="@style/Widget.AppCompat.ActionBar">
    <item name="android:background">#800000</item>
</style>

清單文件

<application`enter code here`
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:theme="@style/AppTheme" >
        <activity android:name=".SplashScreen`enter code here`Activity" 

使用Theme.AppCompat.Light.NoActionBar並在主布局中創建工具欄布局。 在活動中綁定工具欄和

setSupportActionbar(工具欄);

從這里閱讀工具欄部分: https : //chris.banes.me/2014/10/17/appcompat-v21/

而不是使用styles.xml來定義自定義ActionBar ,您應該使用themes.xmlAndroid 官方指南中所述

示例取自Android 開發的官方指南

<?xml version="1.0" encoding="utf-8"?>
<resources>
<!-- the theme applied to the application or activity -->
<style name="CustomActionBarTheme"
       parent="@style/Theme.AppCompat.Light">
    <item name="android:actionBarStyle">@style/MyActionBar</item>
    <item name="android:actionBarTabTextStyle">@style/TabTextStyle</item>
    <item name="android:actionMenuTextColor">@color/actionbar_text</item>

    <!-- Support library compatibility -->
    <item name="actionBarStyle">@style/MyActionBar</item>
    <item name="actionBarTabTextStyle">@style/TabTextStyle</item>
    <item name="actionMenuTextColor">@color/actionbar_text</item>
</style>

<!-- general styles for the action bar -->
<style name="MyActionBar"
       parent="@style/Widget.AppCompat.ActionBar">
    <item name="android:titleTextStyle">@style/TitleTextStyle</item>
    <item name="android:background">@drawable/actionbar_background</item>
    <item name="android:backgroundStacked">@drawable/actionbar_background</item>
    <item name="android:backgroundSplit">@drawable/actionbar_background</item>

    <!-- Support library compatibility -->
    <item name="titleTextStyle">@style/TitleTextStyle</item>
    <item name="background">@drawable/actionbar_background</item>
    <item name="backgroundStacked">@drawable/actionbar_background</item>
    <item name="backgroundSplit">@drawable/actionbar_background</item>
   </style>
</resources>

在清單文件中,您可以將主題應用於整個應用程序:

<application android:theme="@style/CustomActionBarTheme" ... />

或個人活動:

<activity android:theme="@style/CustomActionBarTheme" ... />

我找到了解決方案

  1. 添加支持庫:

在此處輸入圖片說明

  1. 擴展 AppCompatActivity 類
  2. 將代碼添加到 build.gradle

構建類型{

    debug {

        minifyEnabled true
    }

    release {
        minifyEnabled true
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'

    }
}

現在它的工作f9。 謝謝

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM