UI卡顿

一、UI卡顿的原理

60fps-->16ms   每秒60帧 ,60ms一帧;大量的GC 会使UI卡顿。

overdraw 过度绘制,某些像素会绘制多次。

二、UI卡顿原因分析

(1)人为的在UI线程中做轻微的耗时操作,导致UI线程卡顿。

(2)布局layout过于复杂,无法在16ms内完成渲染

(3)同一时间动画执行的次数过多,导致cpu或GPU负载过重

(4)View过度绘制,导致某些像素在同一帧时间内被绘制多次,从而使cpu或GpU负载过重

(5)view频繁的触发measure、layout,导致measure、layout累计耗时过多及整个view频发的重新渲染

(6)内存频繁触发GC过多,导致暂时阻塞渲染操作

(7)冗余资源及逻辑等导致加载和执行缓慢

(8)ANR

三、UI卡顿总结

1.布局优化  gone替代visible    自定义控件替代复杂布局

2.列表以及adapter优化

3.背景和图片等内存分配优化

4.避免ANR

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 注意事项: 布局优化;尽量使用include、merge、ViewStub标签,尽量不存在冗余嵌套及过于复杂布局(...
    HarryXR阅读 10,634评论 1 19
  • 原文: http://www.cnblogs.com/yezhennan/p/5442031.html UI性能测...
    vb12阅读 9,904评论 0 9
  • 一、UI卡顿原理 ①60fps-->16ms :Android系统每16ms会重新发出信号,触发对UI进行渲染,如...
    lkmc2阅读 3,411评论 0 1
  • 待人以诚而非银,土沃马肥勿忘本。 不见仓廪量以吨,却殄天物惹人忿。 纵使篷盖数家珍,君得且行且安身? 身前生后皆无...
    陈景行阅读 1,279评论 0 0
  • 一个人是怎么成长的,我们自小读书明理,自小做作业,听老师的话,我们和挚爱的亲人生活在一起。这个过程,大概有十几年,...
    伪思考宰飞阅读 2,425评论 0 0

友情链接更多精彩内容