Android | 玩轉AppBarLayout,設定scrollFlags滑動屬性詳解
阿新 • • 發佈:2021-03-15
CoordinatorLayout與AppBarLayout的配合使用,在之前的文章中我們也經常使用,主要是專門用來打造各種炫酷的效果。
有童鞋看了之前的文章反饋對AppBarLayout中的scrollFlags屬性的設定不是很明白,這篇文章我們具體來講講這個屬性的用法效果。
我們先簡單瞭解一下AppBarLayout:
AppBarLayout繼承自LinearLayout,佈局方向為垂直方向。所以你可以把它當成垂直佈局的LinearLayout來使用。AppBarLayout是在LinearLayou上加了一些材料設計的概念,它可以讓你定製當某個可滾動View的滾動手勢發生變化時,其內部的子View實現何種動作。
這裡說得其內部的子View實現任何動作,就是可以通過scrollFlags屬性進行設定達到想要的效果。
那麼app:layout_scrollFlags可以設定哪些動作呢?
下面我們通過XML佈局檔案程式碼和對應的效果圖進行解析:
1、scroll
子View會跟隨滾動事件一起發生移動而滾出或滾進螢幕。注意兩點:第一點,如果使用了其他值,必定要使用這個值才能起作用;第二點:如果在這個子View前面的任何其他子View沒有設定這個值,那麼這個子View的設定將失去作用。
佈局檔案:
```java
```
對應效果圖:
![在這裡插入圖片描述](https://img-blog.csdnimg.cn/20210315115747515.gif#pic_center)
2、enterAlways
和scroll相比較,其實就是向下滾動時優先順序問題,scroll首先滑動的是列表,列表的資料全部滾動完畢,才開始toolbar滑動。而scroll | enterAlways首先滑動的是toolbar ,然後再去滑動其他的view。只是優先順序先後的問題。
佈局檔案:程式碼型別,只是改變屬性值,這裡就不贅述了
```java
................