CoordinatorLayout? >> AppBarLayout >> CollapsingToolbarLayout(內(nèi)部可隨意包裹控件)
每個(gè)需要響應(yīng)滾動(dòng)的View都需要在XML中設(shè)置app:layout_scrollFlag
layout_scrollFlags=scroll的時(shí)候,這個(gè)View會 跟著 滾動(dòng) 事件響應(yīng),
layout_scrollFlags=“enterAlways”的時(shí)候 這個(gè)View會響應(yīng)下拉事件
所以呈現(xiàn)出來的結(jié)果應(yīng)該是我們在上拉的時(shí)候toolBar 會隱藏,下拉的時(shí)候toolBar會出來
那如果當(dāng)我們的toolBar 等于 app:layout_scrollFlags=”scroll|snap”的時(shí)候 ,
layout_scrollFlags=scroll的時(shí)候,這個(gè)View會 跟著 滾動(dòng) 事件響應(yīng),
layout_scrollFlags=“snap”的時(shí)候 在Scroll滑動(dòng)事件結(jié)束以前 ,如果這個(gè)View部分可見,那么這個(gè)View會停在最接近當(dāng)前View的位置。
AppBarLayout內(nèi)如果有不需要隱藏的只需不設(shè)置app:layout_scrollFlag,在滑動(dòng)到頂部的時(shí)候此類控件會在頂部顯示
如果需要頂部圖片有淡入淡出動(dòng)畫需要使用CollapsingToolbarLayout 內(nèi)部包裹ImageView和TollBar ImageVIew需要設(shè)置app:layout_collapseMode="parallax",代表有動(dòng)畫效果。ToolBar內(nèi)部如果設(shè)置app:layout_collapseMode="pin"代表如果圖片隱藏了ToolBar的TItle在頂部顯示。
CoordinatorLayout下面跟能滾動(dòng)的控件(ListView,RecyclerView等),下面的控件無法準(zhǔn)確在CoordinatorLayout的下面,需要加:app:layout_behavior="android.support.design.widget.AppBarLayout$ScrollingViewBehavior">
在CollapsingToolbarLayout里面設(shè)置app:contentScrim="?attr/colorPrimary"屬性代表如果圖片動(dòng)畫過后是否消失



需要的庫:
compile'com.flyco.tablayout:FlycoTabLayout_Lib:2.1.2@aar'
compile'com.android.support:design:25.3.1'
compile'com.android.support.constraint:constraint-layout:1.0.2'
compile"org.jetbrains.anko:anko-common:$anko_version"