跳至主要內容

11.NestedScrollView嵌套


NestedScrollView嵌套RecyclerView如何解决呢?

当NestScrollView里头有RecyclerView的时候,如果不做处理。

RecyclerView里的Item会一次全部加载出来。

也就是说会一次性调用onCreateViewHolder

正常来说,这个onCreateViewHolder只会调用比可见个数多一点,如果你滑动得快来不及复用,则会创建多一到两个。

如是是NestedScrollView嵌套RecyclerView,onBindViewHolder也会一次性调用完,因为要设置数据呀。

为什么会这样子呢?

因为NestedScrollView一次让RecyclerView显示了所有的内容,这个跟它的测量有关系。

而RecyclerView渲染的高度是全部数据渲染的高度。

所以就全加载啦。

怎么解决呢?

思路就是设定RecyclerView的高度,处理一下滑动事件。

具体请看视频吧:

NestedScrollView嵌套RecyclerView如何解决呢?open in new window