您的位置:首页 > 其它

安卓复杂滑动案例 自定义behavior源码分析 实现头布局图片的缩放透明度变化,RecycleView的滑动布局,坐标变化

2017-07-06 13:00 746 查看
**#复杂滑动案例

* 上方图片放大,

* 透明

* 输入框,不断增大

* 变色

* 滑动的时候,条目不会改变.

* 再滑的时候,条目滑动

1,让rv居于头部的下方

方案?:

1,重写layoutDependsOn 让当前rv去以来头部视图

2,获取都以来的头部视图的高度onDependentViewChanged 设置给rv 设置setTranslationY

2,让rv跟着头部 向上平移

处理头部的向上平移:在onNestedPreScroll中计算移动距离,还没有真正移动

float newTranslationY = dependency.getTranslationY() - dy;

//计算出最小平移的y的距离

float minTranslationY = -(dependency.getHeight() - finalHeight);
if (newTranslationY > minTranslationY) {
dependency.setTranslationY(newTranslationY);
/**
* 在图片折叠的情况下
* 1不允许RecycleView自身滚动,不能和图片一起平移
* 2只能和图片一起向上移动
*/
//1,
consumed[1] = dy;
//2,
}


3,rv向上平移

onDependentViewChanged

child.setTranslationY(dependency.getHeight()+dependency.getTranslationY());

后面是一个负数,所以用+号

4,向下平移的处理,

onNestedScroll方法中

float newTranslation = dependency.getTranslationY() - dyUnconsumed;

//平移的最大距离,坐标0

if (newTranslation <0) {

dependency.setTranslationY(newTranslation);

}

5处理图片的缩放和透明都,变化

onDependentViewChanged中拿到移动百分比,

按照百分比,进行图片的缩放,和透明度变化

6,手指快读滑动图片的缓慢打开和关闭

快速滑动 **
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐