RecyclerView的优化

前言:好久没有写文章了,主要是前端时间,最近都在学习C++和js,还有工作上的事情,还有就是懒,所以就没有写了。

今天,就写一下关于RecyclerView优化的问题。

RecyclerView的使用,我就不多说了,我前面有讲到。RecyclerView的复杂界面和效果,这个基本都有开源的,我就不写了。

我就写一点实用的的优化方案吧。

首先,优化?为什么要优化?

那必然是,存在问题才需要优化,要是没有问题,那优化个毛呀。

那么通常是有哪些问题呢?

其实RecyclerView的问题,不外乎就是卡顿,界面布局错误,加载慢这3个问题。(崩溃,加载不出来什么的,那个是代码写得有问题了)

那我们先来分析一下,可能是什么原因造成上面的问题呢?

1.先说说界面布局错误这个问题,这个问题,个人觉得,其实也主要是对界面布局的设计有问题,通常,仔细看看XML布局界面就能找到问题。

2.再来说说加载慢这个问题。

这个其实也简单,就是在绘制(渲染/刷新)界面的时候,非界面的工作干多了

什么是非界面工作呢,比如,数据排序(正序,倒序等),筛选。比如数据格式化,string转时间格式,long转时间格式,大小写转换,Html.fromHtml(str).toString()等。这些单个出现,是没有什么感觉的,但是,数量增加了,那就不好说了。

所以,我们要做的就是,把这些不该界面干的工作给摘出去,在界面绘制的时候,只干界面绘制的工作

再想想,还有没有其他情况也会造成界面加载慢的?

嗯,既然说到这个存在耗时的操作会慢(排序,格式转换其实也算耗时的,当数据多的情况下),那么我们是不是还可以再往里面想多一点,比如,既然数据多了,会造成耗时,那么我们就一次少加载一点数呗,就分页加载。

3.卡顿问题

重头戏来了,这个问题,算是一个大问题,也是面试最喜欢问的问题了。

首先,哪些情况不会卡顿,我们先把这些排除:简单布局,没有视频,没有图片,没有表格,没有嵌套,没有倒计时,没有频繁更新,没有动画。这些基本不会出现卡顿,就不需要考虑了。

那么与此对应的就可能会卡顿了:

布局复杂:这个没有办法咯,只有写布局的时候,少嵌套,少用相对布局,对用线性布局,控件之间的关系尽量少。

含视频:视频是很占资源的,所以注意,一定要到这个界面才加载视频,一旦这个视频item划出了界面,就释放。

含图片:图片尽量用小图,网络图片就懒加载(先用默认小图占位)

表格这个很少,我也没遇到过。

嵌套:recyclerView.setNestedScrollingEnabled(false),记住这个方法吧,很有用的,多尝试几次就知道了。

动画:这个和视频是一样的。

总结一下:以上就是我平时能遇到,我目前能想到的优化了,记录一下,也分享一下。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,233评论 6 495
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,357评论 3 389
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 159,831评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,313评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,417评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,470评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,482评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,265评论 0 269
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,708评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,997评论 2 328
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,176评论 1 342
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,827评论 4 337
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,503评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,150评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,391评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,034评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,063评论 2 352

推荐阅读更多精彩内容