Android 沉浸式标题栏
2018-12-13 本文已影响0人
CodeDuan
Andorid实现沉浸式标题栏。
自己闲着没事就研究了下这个,随着scrollbar滑动控制Toolbar的显示或隐藏,颜色渐变效果。
原理 :监听ScrollView的滑动高度。判断滑动的高度是否大于Toolbar的高度,控制显示或者隐藏,当然看需求啦。
监听ScrollView的滑动高度:首先给ScrollView设置监听 scroll.setOnScrollChangeListener;在这里面使用scroll.getScrollY();获取滑动的高度,当滑动的高度大于Toolbar的高度时,显示Toolbar,否则隐藏Toolbar;
需要注意的是:在OnCreate中获取Toolbar的高度时,高度为0;这是因为这个时候控件还没初始化完成,解决方法是 给Toolbar设置监听,如图1。
接下来就是设置渐变效果了,原理就是在滑动监听里面,随机生成一个数值,然后设置toolbar或者title的Alpha就可以啦(图2)。
图1 图2