AppBarLayout的子布局
layout_scrollFlags: Scrolling View和Child View誰先滾動問題
1、scroll:影響向下滾動(預設不設定的值)
Child View 伴随着滾動事件而滾出或滾進螢幕。
注意兩點:
第一點,如果使用了其他值,必定要使用這個值才能起作用;
第二點:如果在這個child View前面的任何其他Child View沒有設定這個值,那麼這個Child View的設定将失去作用
發生向下滾動是,優先滾動Scrolling View,當優先滾動的一方已經全部滾進螢幕之後,另一方才開始滾動
2、enterAlways : 影響向下滾動
對比scroll和scroll | enterAlways設定,發生向下滾動事件時,前者優先滾動Scrolling View,後者優先滾動Child View,
效果:當優先滾動的一方已經全部滾進螢幕之後,另一方才開始滾動
3、enterAlwaysCollapsed:影響向下滾動
一般:scroll|enterAlways|enterAlwaysCollapsed
child View需設定最小值,即minHeight。
效果:向下滾動時,Child View先向下滾動最小高度值,然後Scrolling View開始滾動,到達邊界時,Child View再向下滾動,直至顯示完全
4、exitUntilCollapsed:影響向上滾動
這裡也有最小高度,即有沒有設定minHeight,一般不設定
效果:發生向上滾動時,Child View向上滾動退出直到最小高度,然後Scrolling View開始滾動。一般minHeight不設定,是以它就會完全滾出螢幕
5、snap
Child View滾動比例的一個吸附效果。也就是說,
效果:Child View不會存在局部顯示的情況,滾動Child View的部分高度,當我們松開手指時,Child View要麼向上全部滾出螢幕,要麼向下全部滾進螢幕,有點類似ViewPager的左右滑動
CollapsingToolbarLayout的子布局(這個沒用過,暫時不展開)
layout_collapseMode:做折疊效果的
parallax:視差模式,在折疊的時候會有折疊視差效果。一般搭配layout_collapseParallaxMultiplier=“0.5”視差的明顯程度be between 0.0 and 1.0.
none:沒有任何效果,往上滑動的時候toolbar會首先被固定并推出去。
pin:固定模式,在折疊的時候最後固定在頂端。
示例代碼: