CoordinatorLayout的使用

字数 433阅读 155

CoordinatorLayout  >> AppBarLayout >> CollapsingToolbarLayout(内部可随意包裹控件)

每个需要响应滚动的View都需要在XML中设置app:layout_scrollFlag

layout_scrollFlags=scroll的时候,这个View会 跟着 滚动 事件响应,

layout_scrollFlags=“enterAlways”的时候 这个View会响应下拉事件

所以呈现出来的结果应该是我们在上拉的时候toolBar 会隐藏,下拉的时候toolBar会出来

那如果当我们的toolBar 等于 app:layout_scrollFlags=”scroll|snap”的时候 ,

layout_scrollFlags=scroll的时候,这个View会 跟着 滚动 事件响应,

layout_scrollFlags=“snap”的时候 在Scroll滑动事件结束以前 ,如果这个View部分可见,那么这个View会停在最接近当前View的位置。

AppBarLayout内如果有不需要隐藏的只需不设置app:layout_scrollFlag,在滑动到顶部的时候此类控件会在顶部显示

如果需要顶部图片有淡入淡出动画需要使用CollapsingToolbarLayout 内部包裹ImageView和TollBar ImageVIew需要设置app:layout_collapseMode="parallax",代表有动画效果。ToolBar内部如果设置app:layout_collapseMode="pin"代表如果图片隐藏了ToolBar的TItle在顶部显示。

CoordinatorLayout下面跟能滚动的控件(ListView,RecyclerView等),下面的控件无法准确在CoordinatorLayout的下面,需要加:app:layout_behavior="android.support.design.widget.AppBarLayout$ScrollingViewBehavior">

在CollapsingToolbarLayout里面设置app:contentScrim="?attr/colorPrimary"属性代表如果图片动画过后是否消失


有这个属性



没有这个属性


基本操作

需要的库:

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"

推荐阅读更多精彩内容