RecyclerView实现滚动方向判断(上下监听)
2016-09-18 21:43
2536 查看
最近在做项目中遇到一个在RecyclerView瀑布流中加一个悬浮的一键置顶的透明按钮,用了一个方法出现在滑动屏幕时会使透明按钮时不时的消失,使得用户体验非常差;经过仔细研究发现了一个比较方便的方法(欢迎大家尝试使用):
mRecyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() {
int mScrollThreshold;
@Override
public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
super.onScrolled(recyclerView, dx, dy);
boolean isSignificantDelta = Math.abs(dy) > mScrollThreshold;
if (isSignificantDelta) {
if (dy > 0) {
onScrollUp();
} else {
onScrollDown();
}
}
}
public void setScrollThreshold(int scrollThreshold) {
mScrollThreshold = scrollThreshold;
}
});
/**
* 下滑监听
*/
private void onScrollDown() {
//下滑时要执行的代码
imageView.setVisibility(View.GONE);
}
mRecyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() {
int mScrollThreshold;
@Override
public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
super.onScrolled(recyclerView, dx, dy);
boolean isSignificantDelta = Math.abs(dy) > mScrollThreshold;
if (isSignificantDelta) {
if (dy > 0) {
onScrollUp();
} else {
onScrollDown();
}
}
}
public void setScrollThreshold(int scrollThreshold) {
mScrollThreshold = scrollThreshold;
}
});
/**
* 下滑监听
*/
private void onScrollDown() {
//下滑时要执行的代码
imageView.setVisibility(View.GONE);
}
/** * 上滑监听 */ private void onScrollUp() { //上滑时要执行的代码 imageView.setVisibility(View.VISIBLE); }
相关文章推荐
- Android_RecyclerView实现上下滚动广告条(带图片)
- 【Android】ListView监听上下滑动(设置滚动监听判断ListView的滚动方向同时获取屏幕高度、ListView实际高度,判断是否需要展示返回顶部按钮(具体逻辑请看代码--附有详细注释)。
- Android_RecyclerView实现上下滚动广告条实例(带图片)
- ViewGroup实现可以上下、左右滚动跑马灯效果
- javascript实现手机触摸屏左右(上下)滚动(javascript感知滑屏方向)
- static引发的RecyclerView上下滚动数据显示异常的bug
- Android对ScorllView滚动监听,实现美团、大众点评的购买悬浮效果
- Android ScrollViewy与HorizontalScrollView实现上下左右滚动
- 【Android实战】RecyclerView实现水平可滚动gridview
- 【转载】UIScrollerView滚动方向判断
- Android WebView 滚动方向判断同时底部导航栏隐藏或显示(动画效果)
- Android 用ScrollView和HorizontalScrollView同时实现上下、左右滚动
- Android ScrollViewy与HorizontalScrollView实现上下左右滚动
- Android学习笔记:超能RecyclerView组件使用(下)--实现监听事件
- 关于RecyclerView实现瀑布流,上下滑动时item之间互换位置的问题
- iOS疯狂详解之UIScrollerView滚动方向判断
- Android ScrollView HorizontalScrollView 实现全方向(上下左右)反弹效果
- JS实现上下左右四方向无间隙滚动
- 使用viewpager嵌套实现上下左右滑动切换图片(IOS双向滚动翻页效果相同)
- android TextView实现实现跑马灯效果,并监听滚动完成动作。