CoordinatorLayout学习
2015-09-17 15:58:49 0 举报
对于Android嵌入式滑动的学习
作者其他创作
大纲/内容
ListView
NestedScrollingChildHelper
完成ListView跟支持嵌入式滑动的父容器的交互
NestedScrollingChild
是嵌入式滑动的触发类,放在支持嵌入式滑动的容器内,完成跟容器的交互,处理开始滑动,结束滑动,以及在滑动时处理消费的滑动和未消费的滑动1.开始滑动,通知父容器2.结束滑动3.滑动前通知4.滑动通知5.Fling前通知6.Fling通知
NestedScrollingParent
当容器内的子视图需要滑动的时候,跟父容器的交互子视图滑动时对父容器的回调,从而完成子容器和父容器的交互1.开始滑动的通知2.停止滑动的通知3.接受滑动的通知4.开始滑动后准备滑动的回调5.开始滑动后滑动的回调6.开始Fling后准备Fling的回调7.开始Fling后Fling的回调
ScrollViewBehaviour
滑动子视图需要使用的Behavior1.确定依赖对象2.重新计算子视图大小3.重新计算依赖视图的布局改变
ViewOffsetHelper
ViewGroup
MyListView
让ListView支持嵌入式滑动,在NestedScrollingChild的方法中让NestedScrollingChildHelper来完成处理
Behavior
依赖视图需要使用的Behavior实现父类接收到回调以后依赖视图需要完成的处理1.开始滑动时的处理2.停止滑动时的处理3.滑动准备时的处理4.滑动时的处理5.Fling时的处理6.状态的保存和恢复7.重新处理布局
ViewOffsetBehavior
重新调整布局
CoordinatorLayout
继承自ViewGroup,定义了Behavior类,实现了NestedScrollingParent接口,其子类实现Behavior从而完成不同的行为1.通过LayoutParams类跟Behavior方法的绑定,子类需要在LayoutParams绑定不同Behavior来指定不同的行为2.定义默认Behavior类3.实现NestedScrollingParent接口中的方法来完成跟子视图中的Behavior的绑定4.
LinearLayout
AppBarLayout
在CoordinatorLayout的布局中负责头部显示,没有滑动,但是在其他视图滑动的时候,首先处理滑动
0 条评论
下一页