AppBarLayout ScrollFlags

CoordinatorLayout经常会和AppBarLayout配合使用,AppBarLayout的滑动属性有以下flags,xml中设置方法如下:

app:layout_scrollFlags="scroll|enterAlways"

flags取值scroll, enterAlways, enterAlwaysCollapsed, exitUntilCollapsed, snap,其中scroll是必须的

scroll

允许跟随嵌套滑动

enterAlways

向下滑动时,优先滑动设置了该属性的view,然后在滑动list类的child view

enterAlwaysCollapsed

对enterAlways的补充,配合enterAlways一起使用,设置该flags的view需要设置minimum height。

向下滑动时优先滑动该view,先滑出minimum height距离后,在滑动child view,最后在把该view余下的距离滑出。

exitUntilCollapsed

这个属性和上面属性类似,也需要一个minimum height, 不过这个属性作用于向上滑动时。
向上滑动时,会留下minimum height的高度固定在顶部,然后child view在继续滑动,类似于吸顶。

snap

这个效果类似于一个阈值,向上或者向下滑动时,没有达到阈值,则弹回。更viewpager翻页时阈值效果一样

注意

因为AppBarLayout是一个线性布局,所以当某个view没有设置scroll属性时,会导致该view和后面的所有view都不能滑动,这也是为什么scroll属性是必须的。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容