美文网首页
性能优化- UI渲染和布局适配

性能优化- UI渲染和布局适配

作者: 闫鹏飞写字的地方 | 来源:发表于2021-09-22 16:28 被阅读0次

    1.内存泄漏和内存抖动
    内存泄漏: GC在内存吃紧去回收内存的时候,无法回收某-块不再使用的内存。随着时间的推移会导致内存溢出,这种其实就是强引用
    内存抖动: GC的频率会非常之频繁,不断的开辟和回收大的内存。

    2.自定义View代码优化
    举个例子? (内存优化主要去讲)去观察,去思考,有意识I
    for循环,不断刷新界面,多次调用的情况,通常不要重复创建一些没有必要的对象。 解决的方式在某一个地方事先创建好

    1. UI渲染与界面卡顿

    https://blog.csdn.net/jiahui_zhu/article/details/52212412

    Ul渲染,在-定的时间内必须要测量摆放呈现,
    怎么解决经常出现的一些情况,不断GC的时候会导致界面卡顿( GC会去占用主线程) , 在主线程中不要去做耗时的操作
    比如点击一个按钮 ,过了很久才跳过去,怎么解决? onCreate里面做了耗时操作,可以再页面添加一个进度条(先跳过去) , 但是般来讲这种耗时操作只需要出现一次,一定要做一次缓存。(Hello World级别)

    U|渲染问题解决,绿色两次,淡红3次,深红是4次( - -般是由于背景导致的)小事例(要自己去观察,做调整)

    4.资源适配

    参考权威的一些APK (Canon , QQ), -个概念把能够写到res下面的全部写到这个里面,如字体大小文本颜色等等(严格执行)

    5.布局适配
    布局的别名问题,以画图的小事例为例子(设计师)
    平板layout-sw600dp (600dp以上) , 平板会自动去加载这个文件下的布局,如果有需要适配的界面就可以放在这里面
    竖屏layout-land , 竖屏情况下会自动去加载这个文件下的布局,如果有需要适配的界面就可以放在这里面

    1.屏幕尺寸,屏幕分辨率,屏幕像素密度
    1.1屏幕尺寸:指的是屏幕对角线的长度5.05.1 ( 并不是特别重要)
    1.2屏幕分辨率:指的是在横纵向上的像素点数单位是px, 1px = 1像素一般以纵向像素横向像素,如19201080
    1.3屏幕像素密度:指的是每英寸上面的像素点数,单位是dpi ,即“dot per inch"的缩写,屏幕像素密度与屏幕尺寸和屏幕分辨率有关

    Nexus 5
    屏幕4.95inch
    19201080
    DPI= 445
    (1920平方+ 1080平方)开根号14.95= 445 dp
    480
    320 3.5英寸= 160dpi
    2.dp、dip、 dpi、 sp、 px之间的关系
    2.1 dp、dip 指的是密度无关像素,以160pi为基准, 1dip=1px
    2.2 sp google 推荐12sp以上 12sp 14sp 18sp 22sp 最好不要使用基数,可能会在部分机型上造成精度的丢失10sp
    I
    3.mdpi、hdpi. xhdpi. xxhdpi如何计算区分
    ldpi
    120 240320
    mdpi .
    160
    320
    480
    hdpi 240
    480800
    xhdpi 320 720
    1280

    在代码中使用的一般都是px ,
    ,一般都需要转换

    6.图片适配,
    1套3套
    drawable mipmap 区别官网是讲得非常清楚了, mipmap主要放图标, 目前市场上的都没有分得太开
    -般情况下放-套就可以,部分要区分开,放-套的情况下放用户量最多的那个目录下, 11M 21M 35M
    特殊情况下相对尺寸较大的一些图,-般需要放三套 如启动页, 个人中心背景图等等,还有必须要做Bitmap的优化或者用第三方的图片库去加载

    相关文章

      网友评论

          本文标题:性能优化- UI渲染和布局适配

          本文链接:https://www.haomeiwen.com/subject/cknwgltx.html