NestedScrolling的使用是所有嵌套滾動效果的基礎,先看一下布局文件代碼:
<com.zyc.hezuo.animationdemo.MyCustomNestedScrollingParent
android:id="@+id/nestedparent"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<ImageView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:src="@mipmap/pic_shi"/>
<TextView
android:layout_width="match_parent"
android:layout_height="50dp"
android:textSize="20sp"
android:gravity="center"
android:background="@color/bt_1"
android:text="我是標題"/>
<com.zyc.hezuo.animationdemo.MyCustomNestedScrollingChild
android:id="@+id/nestedchild"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="我是任意內容我是任意內容我是任意內容我是任意內容我是任意內容我是任意內容我是任意內容我是任意內容我是任意內容我是任意內容"
android:textSize="30sp"/>
</com.zyc.hezuo.animationdemo.MyCustomNestedScrollingChild>
</com.zyc.hezuo.animationdemo.MyCustomNestedScrollingParent>
整個布局由MyCustomNestedScrollingParent
包裹,它有三個子view瞭恰,分別是ImageView
、TextView
、MyCustomNestedScrollingChild
绸罗,MyCustomNestedScrollingChild
實現(xiàn)了NestedScrollingChild
接口荒典,MyCustomNestedScrollingParent
實現(xiàn)了NestedScrollingParent
接口酪劫,兩者相互配合吞鸭,根據(jù)ImageView
的高度計算具體行為。
然而覆糟,本章不會重復的說明
NestedScrollingChild
和NestedScrollingParent
刻剥,本章的重點是CoordinatorLayout
、AppBarLayout
滩字、NestedScrollView
造虏、RecyclerView
結合使用。
(1) CoordinatorLayout+AppBarLayout+NestedScrollView
如圖所示麦箍,CoordinatorLayout
實現(xiàn)了NestedScrollingParent2
接口漓藕,NestedScrollingParent2
和NestedScrollingParent
類似,從上一篇就知道挟裂,僅僅只有NestedScrollingParent
是沒有嵌套聯(lián)動效果的享钞,必須結合NestedScrollingChild
才可以,這里使用NestedScrollView
诀蓉,NestedScrollView
實現(xiàn)了NestedScrollingChild2
接口栗竖。
布局如下:
<android.support.design.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
xmlns:app="http://schemas.android.com/apk/res-auto"
tools:context=".MainActivity"
android:background="#cccccc">
<android.support.v4.widget.NestedScrollView
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="26sp"
android:text="阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多"/>
</android.support.v4.widget.NestedScrollView>
</android.support.design.widget.CoordinatorLayout>
然而,CoordinatorLayout
還缺少一個至關重要的子布局AppBarLayout
交排,兩者是黃金搭檔划滋,它們同時存在才可以實現(xiàn)嵌套聯(lián)動效果,布局代碼如下:
<android.support.design.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
xmlns:app="http://schemas.android.com/apk/res-auto"
tools:context=".MainActivity"
android:background="#cccccc">
<android.support.design.widget.AppBarLayout
android:id="@+id/app_bar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:visibility="visible">
<ImageView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@mipmap/che1"
app:layout_scrollFlags="scroll"/>
<TextView
android:layout_width="match_parent"
android:layout_height="50dp"
android:text="假設我是標題欄"
android:textColor="#ffffff"
android:gravity="center"
android:textSize="20sp"/>
</android.support.design.widget.AppBarLayout>
<android.support.v4.widget.NestedScrollView
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="26sp"
android:text="阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多"/>
</android.support.v4.widget.NestedScrollView>
</android.support.design.widget.CoordinatorLayout>
效果如下:
以上效果看起來并不友好埃篓,NestedScrollView
始終全屏处坪,下拉時AppBarLayout
感覺像覆蓋在NestedScrollView
上一樣。為了解決這個問題架专,需要在NestedScrollView
上添加Behavior
同窘。
(2)添加Behavior
添加一句關鍵代碼:
app:layout_behavior="@string/appbar_scrolling_view_behavior"
全部代碼如下:
<android.support.v4.widget.NestedScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="26sp"
android:text="阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多阿薩打算多啊實打實大大多所啊實打實大大所大多"/>
</android.support.v4.widget.NestedScrollView>
appbar_scrolling_view_behavior
它的值是degisn依賴包自帶的,它的值如下:
<string name="appbar_scrolling_view_behavior" translatable="false">android.support.design.widget.AppBarLayout$ScrollingViewBehavior</string>
看到這個值就可以明白部脚,原來就是為了綁定AppBarLayout
的內部類ScrollingViewBehavior
想邦,其效果如下:
(3)scrollFlags說明
首先看一下這個布局代碼
<android.support.design.widget.AppBarLayout
android:id="@+id/app_bar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:visibility="visible">
<ImageView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@mipmap/che1"
app:layout_scrollFlags="scroll"/>
<TextView
android:layout_width="match_parent"
android:layout_height="50dp"
android:text="假設我是標題欄"
android:textColor="#ffffff"
android:gravity="center"
android:textSize="20sp"/>
</android.support.design.widget.AppBarLayout>
在ImageView標簽上添加了一句代碼:
app:layout_scrollFlags="scroll"
這句代碼可以讓圖片實現(xiàn)滾動效果,如果刪除就不會有滾動效果了委刘,scrollFlags
往往和AppBarLayout
一起使用丧没。
scrollFlags
的屬性有scroll、enterAlways锡移、enterAlwaysCollapsed呕童、exitUntilCollapsed、snap淆珊、snapMargins夺饲,他們的效果如下:
一、[app:layout_scrollFlags="scroll"]
:一般聯(lián)動效果,上聯(lián)動時先父后子往声,下聯(lián)動時先子后父擂找。
<ImageView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@mipmap/che1"
app:layout_scrollFlags="scroll"/>
二、[app:layout_scrollFlags="scroll|enterAlways"]
:上聯(lián)動和下聯(lián)動都是先父后子浩销。
<ImageView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@mipmap/che1"
app:layout_scrollFlags="scroll|enterAlways"/>
三贯涎、[app:layout_scrollFlags="scroll|enterAlways|enterAlwaysCollapsed"]
<ImageView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@mipmap/che1"
android:minHeight="50dp"
app:layout_scrollFlags="scroll|enterAlways|enterAlwaysCollapsed"/>
enterAlwaysCollapsed是enterAlways的延伸,enterAlwaysCollapsed必須和enterAlways一起使用撼嗓。enterAlwaysCollapsed主要對view的minHeight
屬性起作用柬采。上聯(lián)動時先父后子,下聯(lián)動時且警,先父(到最小高度)后子再父粉捻。
四、[app:layout_scrollFlags="scroll|exitUntilCollapsed"]
<ImageView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@mipmap/che1"
android:minHeight="50dp"
app:layout_scrollFlags="scroll|exitUntilCollapsed"/>
上聯(lián)動時斑芜,先父后到最小高度肩刃,后子。下聯(lián)動時杏头,先子后父盈包。
五、[app:layout_scrollFlags="scroll|snap"]
<ImageView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@mipmap/che1"
android:minHeight="50dp"
app:layout_scrollFlags="scroll|snap"/>
圖片實現(xiàn)viewpager類似的效果醇王。
六呢燥、[app:layout_scrollFlags="scroll|snap|snapMargins"]
snapMargins是snap延伸,必須和snap一起使用才會生效寓娩。
首先叛氨,給view添加margin,并且不使用snapMargins參數(shù)
<ImageView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@mipmap/che1"
android:layout_marginTop="100dp"
android:layout_marginBottom="100dp"
app:layout_scrollFlags="scroll|snap"/>
效果如下:
如果添加上snapMargins參數(shù)之后
<ImageView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@mipmap/che1"
android:layout_marginTop="100dp"
android:layout_marginBottom="100dp"
app:layout_scrollFlags="scroll|snap|snapMargins"/>
效果如下:
(4)結合RecyclerView
如圖所示棘伴,RecyclerView也實現(xiàn)了NestedScrollingChild2寞埠,所以RecyclerView可以和CoordinatorLayout、AppBarLayout一起實現(xiàn)聯(lián)動效果焊夸。
布局如下:
<android.support.design.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
xmlns:app="http://schemas.android.com/apk/res-auto"
tools:context=".MainActivity"
android:background="#cccccc">
<android.support.design.widget.AppBarLayout
android:id="@+id/app_bar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:visibility="visible">
<ImageView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@mipmap/che1"
app:layout_scrollFlags="scroll"/>
<TextView
android:layout_width="match_parent"
android:layout_height="50dp"
android:text="假設我是標題欄"
android:textColor="#ffffff"
android:gravity="center"
android:textSize="20sp"/>
</android.support.design.widget.AppBarLayout>
<android.support.v7.widget.RecyclerView
android:id="@+id/recycler_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior" />
</android.support.design.widget.CoordinatorLayout>
效果如下:
[本章完...]