1.性能优化初步修改

总结 参照http://www.jianshu.com/p/be05874965d4

1. handler 尽量使用弱引用 同时判断当前引用的activity是否已经处于销毁状态

http://www.jianshu.com/p/c0c67c2a0532

2. length size 在循环时不在第二个里面写

3. String拼字段时尽量使用 StringBuilder

a) StringBuilder builder = new StringBuilder();

builder.append("").append("");

4. String 字段在Strings.xml文件中写

5. 内存方面的话 现在尽可能的

a) 图片drawable避免直接在xml中写

b) Xml中的drawable 规范写入 尽可能让使用者从xml名称中知道当前xml所表示含义

c) 控件加载大图片 通过获取控件的大小动态加载图片,但要注意的是需要判断图片本身宽高是否与控件宽高

6. xml布局 尽可能 FrameLayout>LinearLayout>RelativeLayout 主要原因是

a) RelativeLayout布局绘制onMeasure绘制时间大于LinearLayout的

b) 在LinearLayout 没有weight属性 onMeasure绘制一次 有Weight 属性onMeasure需要跟RelativeLayout绘制两次 但绘制时间测试优于LinearLayout;

c) 如果要用RelativeLayout布局的话 尽量使用padding代替margin;

d) FrameLayout与LinearLayout进行比较的时候 ,在使用嵌套布局时,因为LinearLayout嵌套 onMeasure需要多次循环 LinearLayout 绘制的时间大于FrameLayout;

e) 能用两层LinearLayout,尽量用一个RelativeLayout,在时间上此时RelativeLayout耗时更小。另外LinearLayout慎用layout_weight,也将会增加一倍耗时操作。由于使用LinearLayout的layout_weight,大多数时间是不一样的,这会降低测量的速度。这只是一个如何合理使用Layout的案例,必要的时候,你要小心考虑是否用layout weight。总之减少层级结构,才是王道,让onMeasure做延迟加载,用viewStub,include等一些技巧

http://blog.csdn.net/hejjunlin/article/details/51159419

FrameLayou和布局优化

http://android.blog.51cto.com/268543/308090/

你可能感兴趣的:(1.性能优化初步修改)