1

我觉得我去了所有的答案。我想我被Android L移动触轮......看来无论我做什么动作条的背景仍然默认为colorPrimaryappcompat v7 23,动作条,透明度

layout.xml

<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"   android:id="@+id/dl_main" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    android:layout_height="match_parent" 
    android:layout_width="match_parent" 
    android:fitsSystemWindows="true"> 

    <android.support.design.widget.CoordinatorLayout 
     xmlns:tools="http://schemas.android.com/tools" 
     android:id="@+id/main_content" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     tools:context="com.farmdog.farmdog.MainActivity"> 

     <android.support.v4.view.ViewPager 
      android:id="@+id/container" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      app:layout_anchor="@+id/appbar" 
      app:layout_anchorGravity="top" 
      app:layout_behavior="@string/appbar_scrolling_view_behavior"/> 
     <!--layout_behavior="TransparentScrollingViewBehavior"/>--> 

     <android.support.design.widget.AppBarLayout 
      android:id="@+id/appbar" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content"> 
      <!--android:theme="@style/AppTheme.AppBarOverlay">--> 

      <android.support.v7.widget.Toolbar 
       android:id="@+id/toolbar" 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:paddingTop="8dp" 
       android:paddingBottom="8dp" 
       app:layout_scrollFlags="scroll|enterAlways"/> 
      <!--android:background="?attr/colorPrimaryDark"--> 
       <!--app:theme="@style/AppTheme.AppBarOverlay">--> 
       <!--android:layout_height="?attr/actionBarSize"--> 
       <!--app:popupTheme="@style/AppTheme.PopupOverlay"--> 
     </android.support.design.widget.AppBarLayout> 
........ 

styles.xml(V21)

<resources> 
     <!-- Base application theme. --> 
     <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"> 
      <!-- Customize your theme here. --> 
      <item name="colorPrimary">@color/colorPrimary</item> 
      <!-- colorPrimaryDark wont work on API level < 21 --> 
      <item name="colorPrimaryDark">@color/colorPrimaryDark</item> 
      <item name="colorAccent">@color/colorAccent</item> 
      <item name="android:windowBackground">@color/mainBkgndHard</item> 
      <item name="android:textColor">@color/appTextColor</item> 
      <item name="android:buttonStyle">@style/ButtonTheme</item> 
      <!--<item name="android:fitsSystemWindows">true</item>   hmmm, primaryColor expands on the statusbar now...--> 
      <!-- attempt taking actionbar shadow away --> 
      <item name="elevation">0dp</item> 
      <item name="android:windowContentOverlay">@null</item> 
      <!-- the following line breaks the build--> 
      <!--<item name="windowContentOverlay">@null</item>--> 
      <!-- attempt drawing underneath the actionbar - all fail as of 'com.android.support:appcompat-v7:23.1.1.'--> 
      <item name="windowActionBarOverlay">true</item> 
      <item name="actionBarStyle">@style/MyActionBar</item> 
      <item name="android:windowActionBarOverlay">true</item> 
      <item name="android:actionBarStyle">@style/MyActionBar</item> 
     </style> 

     <!--<style name="AppTheme.AppBarOverlay" parent="ThemeOverlay.AppCompat.Dark.ActionBar">--> 
      <!--<item name="android:background">@color/colorActionBar</item>--> 
      <!--<item name="background">@color/colorActionBar</item>--> 
      <!--<item name="windowActionBarOverlay">true</item>--> 
      <!--<item name="android:windowActionBarOverlay">true</item>--> 
     <!--</style>--> 



     <style name="MyActionBar" parent="Widget.AppCompat.Light.ActionBar.Solid"> 
      <item name="android:background">@color/colorActionBar</item> 
      <!--For compatibility--> 
      <item name="background">@color/colorActionBar</item> 
     </style> 

     <style name="AppTheme.NoActionBar"> 
      <item name="windowActionBar">false</item> 
      <item name="windowNoTitle">true</item> 
      <item name="android:windowDrawsSystemBarBackgrounds">true</item> 
      <item name="android:statusBarColor">@android:color/transparent</item> 
     </style> 


    </resources> 

回答

3

我认为你正在做它在错误的way.I的意思,下面工具栏一直没有任何PrimaryColor甚至背景:

<android.support.v7.widget.Toolbar 
       android:id="@+id/toolbar" 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:paddingTop="8dp" 
       android:paddingBottom="8dp" 
       app:layout_scrollFlags="scroll|enterAlways"/> 

      <!--android:background="?attr/colorPrimaryDark"--> 
       <!--app:theme="@style/AppTheme.AppBarOverlay">--> 
       <!--android:layout_height="?attr/actionBarSize"--> 
       <!--app:popupTheme="@style/AppTheme.PopupOverlay"--> 

所以,这将适用于(V21)的版本不作任何背景或PrimaryColor。而且你可以看到,工具栏将是喜欢你的Activity Theme这有:

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

有了:

Theme.AppCompat.Light.DarkActionBar 

而且,如果你没有设置任何背景颜色或PrimaryColor,因为:

Theme.AppCompat.Light.DarkActionBar 

和你Toolbar它是那样的

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"> 
      <!-- Customize your theme here. --> 
      <item name="colorPrimary">@color/colorPrimary</item> 

否则,它应该坠毁(我猜,不知道),因为你有一个主题DarkActionBar和一个没有背景的工具栏。

我觉得这是问题!

编辑:

为了完成答案,因为这些代码反正简单,我会在这里添加:

也加入这个在您的AppBarLayout

android:theme 
+1

您可能想在滴答绿色之前改变一些位: 这是'AppBarLayout',它需要一个'android:colorPrimary' /'colorPrimary'。 '(android:)background'在这种情况下没有任何影响,没有任何事会崩溃:) – kellogs

+0

哦,我说你的问题,该appbarlayout很简单,你可以建议一个编辑适合你,BTW.goodluck – Mohsen

+0

我在回答中添加的元素 – kellogs