SwipeRefreshLayout 嵌套 RecyclerView滑动冲突

简介: SwipeRefreshLayout 嵌套 RecyclerView滑动冲突

原则上你使用的RecyclerView框架可能是自带刷新的,如果没有就可能会出现这种问题,滑动时会出现卡顿、触发刷新的时机也不对。


思路:

监听RecyclerView的滑动,当滑动到顶部的时候,再设置SwipeRefreshLayout刷新可用。


代码

        mRecyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() {
            @Override
            public void onScrolled(@NonNull RecyclerView recyclerView, int dx, int dy) {
                super.onScrolled(recyclerView, dx, dy);
                //解决mRecyclerView与mSwipeRefreshLayout在部分机型上滑动冲突
                mSwipeRefreshLayout.setEnabled(recyclerView.getChildCount() == 0 || recyclerView.getChildAt(0).getTop() >= 0);
            }
        });

扩展

SwipeRefreshLayout 嵌套ScrollView 滑动冲突

ScrollView嵌套RecyclerView滑动卡顿

目录
相关文章
Flutter ScrollView嵌套ListView滑动冲突
Flutter ScrollView嵌套ListView滑动冲突
1298 0
|
6月前
|
编解码 Android开发
Android 解决TextView多行滑动与NestedScrollView嵌套滑动冲突的问题
Android 解决TextView多行滑动与NestedScrollView嵌套滑动冲突的问题
111 0
|
7月前
|
Android开发
ScrollView中嵌套ListView的问题(转)
ScrollView中嵌套ListView的问题(转)
34 2
|
Android开发
ScrollView 与 ListView 以及 GridView 滑动冲突完美解决
ScrollView 与 ListView 以及 GridView 滑动冲突完美解决
SwipeRefreshLayout与RecyclerView的巧夺天工(二)
SwipeRefreshLayout与RecyclerView的巧夺天工(二)
78 0
SwipeRefreshLayout与RecyclerView的巧夺天工(二)
|
Android开发 容器
深入了解View的滑动冲突
在《与滑动冲突的首次邂逅》一文中,笔者举了一个开发过程中出现的一个简单的滑动冲突问题,带大家直观的了解何为滑动冲突,并且使用了内部拦截法(内部解决法)来解决了这个滑动冲突。
深入了解View的滑动冲突
SwipeRefreshLayout与RecyclerView的巧夺天工(一)
SwipeRefreshLayout与RecyclerView的巧夺天工(一)
92 0
SwipeRefreshLayout 嵌套ScrollView 滑动冲突
SwipeRefreshLayout 嵌套ScrollView 滑动冲突
271 0
SwipeRefreshLayout嵌套banner滑动冲突
SwipeRefreshLayout嵌套banner滑动冲突
221 0
|
前端开发 Android开发
【RecyclerView】 六、RecyclerView.ItemDecoration 条目装饰 ( 简介 | onDraw | onDrawOver | getItemOffsets )
【RecyclerView】 六、RecyclerView.ItemDecoration 条目装饰 ( 简介 | onDraw | onDrawOver | getItemOffsets )
191 0

热门文章

最新文章