项目中时常需要实现在ScrollView中嵌入一个或多个RecyclerView。这一做法通常会导致如下几个问题
- 页面滑动卡顿
- ScrollView高度显示不正常
- RecyclerView内容显示不全
本文将利用多种方式分别解决上述问题
滑动卡顿解决方案
若只存在滑动卡顿这一问题,可以采用如下两种简单方式快速解决
第一种:利用RecyclerView内部方法
recyclerView.setHasFixedSize(true);
recyclerView.setNestedScrollingEnabled(false);
其中,setHasFixedSize(true)方法使得RecyclerView能够固定自身size不受adapter变化的影响;而setNestedScrollingeEnabled(false)方法则是进一步调用了RecyclerView内部NestedScrollingChildHelper对象的setNestedScrollingeEnabled(false)方法,如下
public void setNestedScrollingEnabled(boolean enabled) {
getScrollingChildHelper().setNestedScrollingEnabled(enabled);
}