CoordinatorLayout AppBarLayout CollapsingToolbarLayout实现悬停吸附效果

官方例子:



     

         

     

     

         

         

     

 

AppbarLayout 可以指定当某个可滑动的兄弟View滑动手势改变时AppbarLayout 内部直接子View的响应动作,只要通过app:layout_scrollFlags属性来指定响应动作,layout_scrollFlags有5种响应动作,下面简单介绍下:
app:layout_scrollFlags=“scroll”
当子view设置响应动作为app:layout_scrollFlags="scroll"时,子view会随ScrollView 的滚动而滚动,就相当于这时的子view变成了ScrollView 的item了,会跟随item一起滚动.

app:layout_scrollFlags=“scroll|enterAlways”
当子view设置响应动作为app:layout_scrollFlags="scroll|enterAlways"时,当ScrollView 向下滑动时,子View 将直接向下滑动,而不管ScrollView 是否在滑动。

app:layout_scrollFlags=“scroll|enterAlways|enterAlwaysCollapsed”
当子view设置响应动作为app:layout_scrollFlags="scroll|enterAlways|enterAlwaysCollapsed"时,
当ScrollView 向下滑动的时候,子View(设置了enterAlwaysCollapsed 的子View)下滑至折叠的高度,当ScrollView 到达滑动范围的结束值的时候,滑动View剩下的部分开始滑动。这个折叠的高度是通过子View的minimum height (最小高度)指定的。

app:layout_scrollFlags=“scroll|exitUntilCollapsed”
当子view设置响应动作为app:layout_scrollFlags="scroll|exitUntilCollapsed"时,
当ScrollView 向上滑动时,子View先响应滑动事件,滑动至折叠高度,也就是通过minimum height 设置的最小高度后,就固定不动了,再把滑动事件交给 scrollview,然后 scrollview才开始滑动。

app:layout_scrollFlags=“scroll|snap”
当子view设置响应动作为app:layout_scrollFlags="scroll|snap"时,当ScrollView 下滑到顶部时,如果子view只露出30%的话,子view就会自动折叠回去,如果露出60%的话,就会自动展开.

你可能感兴趣的:(CoordinatorLayout AppBarLayout CollapsingToolbarLayout实现悬停吸附效果)