RecycleView可优化的点

 我来答
会哭的礼物17
2022-07-07 · TA获得超过1.2万个赞
知道大有可为答主
回答量:6431
采纳率:100%
帮助的人:36.8万
展开全部

因为onBind方法的调用时机是View滑到屏幕内可显示时这个方法就会调用此方法,避免在这个方法内设置点击事件等创建对象的操作。

多用于RecycleView嵌套RecycleView,减少对ViewHolder的创建

notifydatasetchange全部刷新,notifyItemRemoved(0)局部删除, notifyItemRangeInserted(start,end)等刷新机制的选择。

其实setItemViewCacheSize设置的是CacheViews的大小

所以我们可以适当的通过调用setItemViewCacheSize方法,来增加CacheViews的大小(默认是2),来防止小范围的滑动导致的重复Bind而导致的卡顿。 典型的拿空间还时间,所以要考虑内存问题,根据自己的应用实际情况设置大小

当知道Adapter内Item的改变不会影响RecyclerView宽高的时候,可以设置为true让RecyclerView避免重新计算大小。

需要升级Recycle版本到25以上的版本才能使用recyclerview prefetch功能。
参考文章: RecyclerView的新机制:预取(Prefetch)
RecyclerView Prefetch功能探究

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Storm代理
2023-07-25 广告
StormProxies是一家可靠的代理服务提供商,提供原生IP(住宅原生IP)和高匿名代理服务。以下是关于StormProxies的原生IP服务的一些信息:1. 住宅原生IP:StormProxies提供的住宅原生IP是指从真实的家庭或企... 点击进入详情页
本回答由Storm代理提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式