ScrollView嵌套RecyclerView的几个坑

第一种解决方式:

当ScrollView与RecyclerView嵌套使用时遇到的几个坑

  1. 1、6.0及以上系统RecyclerView显示不全

  2. 2、滑动冲突,不流畅

  3. 3、页面切换导致嵌套布局不显示在顶部,而是显示RecyclerView的第一个item

1.显示不全

使用RelativeLayout将RecyclerView嵌套

  1. <RelativeLayout

  2. android:layout_width="match_parent"

  3. android:layout_height="wrap_content">

  4. <android.support.v7.widget.RecyclerView

  5. android:layout_width="match_parent"

  6. android:layout_height="wrap_content"/>

  7. </RelativeLayout>

其他思路:重写LinearLayoutManager,尝试了下并未解决

2.滑动不流畅

recyclerView.setNestedScrollingEnabled(false);

3.嵌套布局不显示在顶部

将RecyclerView的焦点取消即可

 第二种解决方式:

使用NestedScrollView来替代ScrollView,但是注意两点:

1.使用NestedScrollView嵌套RecyclerView时,滑动lRecyclerView列表会出现强烈的卡顿感

解决:mRecyclerView.setNestedScrollingEnabled(false);

2可能使用NestedScrollView嵌套RecyclerView时,每次打开界面都是定位在RecyclerView在屏幕顶端,列表上面的布局都被顶上去了

解决:

解决方法就是NestScrollView节点添加

android:focusableInTouchMode="true"

然后在NestScrollView的子节点view添加:

android:descendantFocusability="blocksDescendants"

或者 直接mRecyclerVIew.setFocusableInTouchMode(false)

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值