本章主要讲的是对UI的优化 java
1. 多利用android系统的资源 android
1.1 利用系统定义的id 布局
一般咱们定义控件如<android:id="@+id/mylist" ....../>,其实若是没有特殊的要求能够利用系统定义的id 字体
<android:id="@android :id/list" ....../>,在获取的时候使用android.R.id.list便可 优化
1.2 利用系统的图片资源 ui
引用系统图标,如给一个菜单项设置背景图片时使用以下代码: spa
android:icon="android.drawable/ic_menu_attachment"Build工程后,会报"Resource is not public"的错误,解决方法有两种:
1.在SDK中招的相应的图片资源,复制到工程目录中; .net
2.将上述代码改成 code
android:icon="@*android.drawable/ic_menu_attachment"
1.3 利用系统字符串资源 图片
假如要实现一个Dialog,Dialog上面有"肯定"和"取消"按钮,就可使用下面的代码片断:
android:text="@android:string/yes" android:text="@android:string/no"
1.4 利用系统的Style
好比须要定义一个TextView的样式,设置中等大小字体,则可使用下面代码片断;
android:textAppearance="?android:attr/textAppearanceMedium"须要注意的是:使用系统style前缀不是用的"@android:",而是用的"?android:"。
1.5 使用系统的颜色定义
好比项目中经常使用到的透明色,代码片断以下:
android:background="@android:color/transparent"
总而言之,就是android系统中有不少的系统资源,咱们要根据实际状况合理充分利用。
2.1 抽取相同布局
为了保持界面风格统一,在布局文件中每每会用到一些相同的子布局,因此通常将这些相同的子布局单独写成一个模块,在须要的地方include进来就好了,格式以下:
<include layout="@layout/navigator_bar">通常能够抽取的公共布局模块有:背景、头部的标题栏、底部的导航栏、listview(由于后期每每会更换listview的风格)
2.2 精简UI层次
也就是merge标签的使用,这个没有用过,之后再补充
2.3 界面延迟加载技术
待续......
2.4 如何捕获和出来Crash
待续......