依葫蘆畫瓢,使用CoordinatorLayout後不能滑動
阿新 • • 發佈:2019-02-17
書上沒有CoordinatorLayout與DrawerLayout組合使用的例子,想著弄一下狀態列使用背景圖片色,第一次弄完之後頁面不能滑動。
最後找到原因是DrawerLayout放在了CoordinatorLayout裡面,把DrawerLayout放在CoordinatorLayout外面,並且ScrollView與CoordinatorLayout同一級中就好了。下面的佈局中ScrollView的父級是SwipeRefreshLayout,這個是用來下拉重新整理的,不用套這層也是可以的。
<?xml version="1.0" encoding="utf-8"?> <android.support.v4.widget.DrawerLayout 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:id="@+id/drawer_layout" android:fitsSystemWindows="true" android:layout_width="match_parent" android:layout_height="match_parent"> <android.support.design.widget.CoordinatorLayout android:fitsSystemWindows="true" android:layout_width="match_parent" android:layout_height="match_parent"> <android.support.design.widget.AppBarLayout android:layout_width="match_parent" android:layout_height="match_parent" android:fitsSystemWindows="true"> <android.support.design.widget.CollapsingToolbarLayout android:layout_width="match_parent" android:layout_height="match_parent" android:fitsSystemWindows="true" > <ImageView android:fitsSystemWindows="true" android:layout_width="match_parent" android:id="@+id/bing_pic_img" android:scaleType="centerCrop" android:layout_height="match_parent" /> </android.support.design.widget.CollapsingToolbarLayout> </android.support.design.widget.AppBarLayout> </android.support.design.widget.CoordinatorLayout> <android.support.v4.widget.SwipeRefreshLayout android:id="@+id/swipe_refresh" android:layout_width="match_parent" android:layout_height="match_parent"> <ScrollView android:id="@+id/weather_layout" android:scrollbars="none" android:overScrollMode="never" android:layout_width="match_parent" android:layout_height="match_parent"> <LinearLayout android:fitsSystemWindows="true" android:layout_width="match_parent" android:orientation="vertical" android:layout_height="wrap_content"> <include layout="@layout/title"/> <include layout="@layout/now"/> <include layout="@layout/forecast"/> <include layout="@layout/aqi"/> <include layout="@layout/suggestion"/> </LinearLayout> </ScrollView> </android.support.v4.widget.SwipeRefreshLayout> <fragment android:layout_width="match_parent" android:layout_height="match_parent" android:id="@+id/chooser_area_fragment" android:name="com.coolweather.android.db.ChooseAreaFragment" android:layout_gravity="start" /> </android.support.v4.widget.DrawerLayout>