RecycleView冲突这点事儿!
来源:互联网 发布:免费婚恋交友软件 编辑:程序博客网 时间:2024/05/17 02:24
ScrollView嵌套RecyclerView滑动冲突,禁止RecycleView滑动
ScrollView中嵌套了几个RecyclerView,会导致滑动RecyclerView没有惯性效果。
解决这个问题可以通过重写RecyclerView 的 LinearLayoutManager。
class MyLayoutManager extends LinearLayoutManager { private boolean isScrollEnabled = true; public MyLayoutManager(Context context) { super(context); } public MyLayoutManager(Context context, int orientation, boolean reverseLayout) { super(context, orientation, reverseLayout); } public MyLayoutManager(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) { super(context, attrs, defStyleAttr, defStyleRes); } /** * 是否支持滑动 * @param flag */ public void setScrollEnabled(boolean flag) { this.isScrollEnabled = flag; } @Override public boolean canScrollVertically() { //isScrollEnabled:recyclerview是否支持滑动 //super.canScrollVertically():是否为竖直方向滚动 return isScrollEnabled && super.canScrollVertically(); }}
这里主要是重写canScrollVertically()这个方法,return true支持滑动竖直方向滑动,return false反之。
- 1
- 1
做了个项目,用了support包里的SwipeRefreshLayout和RecyclerView。两者一起使用有一点点小问题,有时候拉着拉着,列表还没拉玩就出来刷新的图标了,在华为荣耀上尤为明显。
解决这个问题如下:
mLinearLayoutManager = new LinearLayoutManager(mActivity); mRecyclerView.setLayoutManager(mLinearLayoutManager); mRecyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() { @Override public void onScrolled(RecyclerView recyclerView, int dx, int dy) { super.onScrolled(recyclerView, dx, dy); swipeRefreshLayout.setEnabled(mLinearLayoutManager.findFirstVisibleItemPosition() == 0); } });
这样就可以确保只有完全滑到顶部,然后再下拉时才刷新!
阅读全文
1 0
- RecycleView冲突这点事儿!
- 用户体验这点事儿
- WLAN这点事儿
- 用户体验这点事儿
- 实习这点儿事儿
- Octave这点事儿
- PHP的模板引擎这点事儿
- 解决RecycleView嵌套RecycleView滑动冲突问题
- scrollview与recycleview冲突解决
- 解决srcollview嵌套recycleview冲突
- bottomsheetbehavior和recycleview的冲突
- 《软件开发这点事儿》作者邵志东老师视频发布
- 软件测试这点事儿【初级篇】(一)
- 自己做项目时遇到的这点事儿...
- 阿里淘宝体验系列1-店铺装修这点事儿
- 处理 recycleview 和 手势冲突的问题
- RecycleView和ViewPager冲突解决与原理
- 解决AppBarLayout中的RecycleView的滑动冲突
- C/C++ "#"与"##"的作用与应用
- 2017linux面试题整理
- nginx中修改server_name无效,修改为www.test.com无法访问,通过localhost可以访问
- jvm:gc算法——复制、标记清除
- 16运算符重载
- RecycleView冲突这点事儿!
- Manacher算法:求解最长回文字符串,时间复杂度为O(N)
- ASSERT(断言)的作用
- Hello,占坑
- Android MVP模式简单例子实战
- 趣店前端实习面试总结
- Android小红点儿数量提示
- hibernateTemplate 与session的区别 HibernateTemplate、HibernateDaoSupport两种方法实现增删改查
- svn 文件被锁定 locked 暴力处理