2017-10-12 139 views
0

我無法讓我的CoordinatorLayout具有Collapsing工具欄和嵌套的ScrollView工作。摺疊狀態欄和底欄的工具欄問題。 Fitssystemwindows =「true」不起作用

對CoordinatorLayout以外的任何其他設置fitssystemwindows =「true」不具有負面影響。 的應用主題具有屬性

<item name="android:windowTranslucentStatus">true</item> 

使狀態欄透明。

我的問題是: 1.圖像滾動得太慢,以至於半透明狀態欄採用藍色工具欄顏色(當工具欄不是100%展開時,ImageView是可見的)。 enter image description here enter image description here

  • 該系統的底酒吧是隱藏我NestedScrollView的一部分。 enter image description here
  • 這是我的佈局:

    <android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:fitsSystemWindows="true" 
    tools:context="com.example.application.collapsingtoolbarexample.MainActivity"> 
    
    <android.support.design.widget.AppBarLayout 
        android:layout_width="match_parent" 
        android:layout_height="250dp" 
        android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"> 
    
        <android.support.design.widget.CollapsingToolbarLayout 
         android:id="@+id/collapsing_toolbar" 
         android:layout_width="match_parent" 
         android:layout_height="match_parent" 
         app:contentScrim="?attr/colorPrimary" 
         app:layout_scrollFlags="scroll|exitUntilCollapsed"> 
    
         <ImageView 
          android:layout_width="match_parent" 
          android:layout_height="match_parent" 
          android:src="@drawable/goslings" 
          android:scaleType="centerCrop" 
          app:layout_collapseMode="parallax" /> 
    
         <android.support.v7.widget.Toolbar 
          android:id="@+id/toolbar" 
          android:layout_width="match_parent" 
          android:layout_height="?attr/actionBarSize" 
          app:layout_collapseMode="pin"/> 
    
        </android.support.design.widget.CollapsingToolbarLayout> 
    
    </android.support.design.widget.AppBarLayout> 
    
    <android.support.v4.widget.NestedScrollView 
        android:layout_width="match_parent" 
        android:layout_height="match_parent" 
        android:background="#dfdddd" 
        app:layout_behavior="@string/appbar_scrolling_view_behavior"> 
    
        <LinearLayout 
         android:layout_width="match_parent" 
         android:layout_height="wrap_content" 
         android:orientation="vertical" 
         android:paddingTop="10dp" 
         > 
    
         <include layout="@layout/card_layout" /> 
    
         <include layout="@layout/card_layout" /> 
    
         <include layout="@layout/card_layout" /> 
    
         <include layout="@layout/card_layout" /> 
    
         <include layout="@layout/card_layout" /> 
    
         <include layout="@layout/card_layout" /> 
    
         <include layout="@layout/card_layout" /> 
    
         <include layout="@layout/card_layout" /> 
    
         <include layout="@layout/card_layout" /> 
    
    
        </LinearLayout> 
    
    </android.support.v4.widget.NestedScrollView> 
    

    回答

    0

    您需要以適應系統的窗口(除了工具欄上的所有內容),還設置圖像不上高度CollapsingToolbar

    android:fitsSystemWindows =「true」

    所以最終的代碼將是

    <android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:fitsSystemWindows="true" 
    tools:context="com.example.application.collapsingtoolbarexample.MainActivity"> 
    
    <android.support.design.widget.AppBarLayout 
        android:fitsSystemWindows="true" 
        android:layout_width="match_parent" 
        android:layout_height="wrap_content" 
        android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"> 
    
        <android.support.design.widget.CollapsingToolbarLayout 
         android:id="@+id/collapsing_toolbar" 
         android:layout_width="match_parent" 
         android:layout_height="match_parent" 
         android:fitsSystemWindows="true" 
         app:contentScrim="?attr/colorPrimary" 
         app:layout_scrollFlags="scroll|exitUntilCollapsed"> 
    
         <ImageView 
          android:layout_width="match_parent" 
          android:layout_height="250dp" 
          android:fitsSystemWindows="true" 
          android:src="@drawable/goslings" 
          android:scaleType="centerCrop" 
          app:layout_collapseMode="parallax" /> 
    
         <android.support.v7.widget.Toolbar 
          android:id="@+id/toolbar" 
          android:layout_width="match_parent" 
          android:layout_height="?attr/actionBarSize" 
          app:layout_collapseMode="pin"/> 
    
        </android.support.design.widget.CollapsingToolbarLayout> 
    
    </android.support.design.widget.AppBarLayout> 
    
    <android.support.v4.widget.NestedScrollView 
        android:layout_width="match_parent" 
        android:layout_height="match_parent" 
        android:background="#dfdddd" 
        app:layout_behavior="@string/appbar_scrolling_view_behavior"> 
    
        <LinearLayout 
         android:layout_width="match_parent" 
         android:layout_height="wrap_content" 
         android:orientation="vertical" 
         android:paddingTop="10dp" 
         > 
    
         <include layout="@layout/card_layout" /> 
    
         <include layout="@layout/card_layout" /> 
    
         <include layout="@layout/card_layout" /> 
    
         <include layout="@layout/card_layout" /> 
    
         <include layout="@layout/card_layout" /> 
    
         <include layout="@layout/card_layout" /> 
    
         <include layout="@layout/card_layout" /> 
    
         <include layout="@layout/card_layout" /> 
    
         <include layout="@layout/card_layout" /> 
    
    
        </LinearLayout> 
    
    </android.support.v4.widget.NestedScrollView>