您的位置:首页 > 移动开发

CoordinatorLayout的AppBarLayout和CollapsingToolbarLayout

2017-07-30 14:37 417 查看

CoordinatorLayout

public class CoordinatorLayout extends ViewGroup implements NestedScrollingParent {
}


通过协调并调度里面的子控件或者布局来实现触摸(一般是指滑动)产生一些相关的动画效果。
可以通过设置view的Behavior来实现触摸的动画调度。
子控件可以相互监听。
滑动控件指的是:RecyclerView/NestedScrollView/ViewPager,ListView、ScrollView不可以。


# AppBarLayout

public class AppBarLayout extends LinearLayout {
}


AppBarLayout响应滚动事件:根据子view的滚动标志(scroll flag)来控制它们如何进入(滚入屏幕)与退出(滚出屏幕)。


app:layout_scrollFlags=”“
scroll: 所有想滚动出屏幕的view都需要设置这个flag- 没有设置flag的view将被固定在屏幕顶部。

enterAlways: 这个flag让任意向下的滚动都会导致该view变为可见,启用快速“返回模式”。

enterAlwaysCollapsed: 当你的视图设置了minHeight属性的时候,那么视图只能以最小高度进入,只有当滚动视图到达顶部时才扩大到完整高度。

exitUntilCollapsed: 滚动退出屏幕,最后折叠在顶端。

Tips:所有使用scroll flag的view都必须定义在没有使用scroll flag的view的前面,
这样才能确保所有的view从顶部退出,留下固定的元素。


CollapsingToolbarLayout

可以实现Toolbar折叠效果.
注意:
1.AppBarLayout设置固定高度,并且要实现折叠效果必须比toolbar的高度要高。

2.CollapsingToolbarLayout最好设置成match_parent

app:layout_collapseMode=”“
parallax:视差模式,在折叠的时候会有折叠视差效果。

一般搭配layout_collapseParallaxMultiplier=“0.5”视差的明显程度(0.0~1.0之间)

none:没有任何效果,往上滑动的时候toolbar会首先被固定并推出去。

pin:固定模式,在折叠的时候最后固定在顶端。

Behavior(CoordinatorLayout.Behavior/FloatingActionButton.Behavior)

github

https://github.com/danhantao/Android-Examples/tree/master/0730_md

参考

Android的材料设计兼容库

cheesesquare
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐