【Android6.0以上关于RecyclerView显是不全的问题】要须心地收汗马,孔孟行世目杲杲。这篇文章主要讲述Android6.0以上关于RecyclerView显是不全的问题相关的知识,希望能为你提供帮助。
android6.0以上关于RecyclerView显是不全的问题
需求描述适配的时候发现Android 6.0以上,RecyclerView显示不全,以下是没有问题的。
这个时候查看布局文件,可以看到RecyclerView是嵌套在ScrollView中的。
<
ScrollView
android:layout_width="match_parent"
android:layout_height="wrap_content">
<
android.support.v7.widget.RecyclerView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:overScrollMode="never"
android:paddingLeft="16dp"
android:paddingRight="16dp" />
<
/ScrollView>
解决方法 第一种解决方法
方法在RecyclerView上在嵌套上一层RelativeLayout,添加属性android:descendantFocusability=”blocksDescendants”(当一个view获取焦点时,viewGroup会覆盖子类控件而直接获取焦点)解决嵌套卡顿的问题。
注意,设立只能使用RelativeLayout,使用FrameLayout、LinearLayout等其他常用的布局控件是不行的。亲测。
代码
<
ScrollView
android:layout_width="match_parent"
android:layout_height="wrap_content">
<
RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:descendantFocusability="blocksDescendants">
<
android.support.v7.widget.RecyclerView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:overScrollMode="never"
android:paddingLeft="16dp"
android:paddingRight="16dp" />
<
/RelativeLayout>
<
/ScrollView>
第二种解决方法
方法使用android.support.v4.widget.NestedScrollView替代ScrollView,并在代码中设置recyclerView.setNestedScrollingEnabled(false)(设置是否允许嵌套滑动)。既可以填ITEM显示不全的坑,又可以填嵌套滑动卡顿的坑。
代码
<
android.support.v4.widget.NestedScrollView
android:layout_width="match_parent"
android:layout_height="wrap_content">
<
android.support.v7.widget.RecyclerView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:overScrollMode="never"
android:paddingLeft="16dp"
android:paddingRight="16dp" />
<
/android.support.v4.widget.NestedScrollView>
recyclerView.setNestedScrollingEnabled(false);
总结相比较而言,个人觉得第二种解决方法更好,第一种方法布局嵌套,总有一种想让人优化的冲动,所以觉得第二种解决方法更好。
推荐阅读
- SQL Server DISTINCT子句用法图解
- jquery动态插入appendprependbeforeafter区别
- jquery中append与appendTo方法区别
- 解决Android Studio 3.x版本的安装时没有SDK,运行时出现SDK tools错误
- Android app option menu
- android studio第一次使用的设置
- Android手机多媒体——拍照和相册
- hdu 6406 Taotao Picks Apples 线段树 单点更新
- Excel Application操作指南