高质量android应用开发技巧,第一篇

来源:互联网 发布:类似于一半的软件 编辑:程序博客网 时间:2024/05/18 20:53

1、使用weight属性实现视图的居中显示

weightSum表示其内部所有子视图的weight总和

2、界面视图使用延迟加载以及避免代码重复

a、使用<include />标签避免代码重复

b、使用ViewStub实现View的延迟加载

3、避免在EidtText中验证日期

可以使用下面的方式来弹出日期选择对话框:

<Button android:layout_width="fill_parent" android:layout_height="wrap_content" android按·:background="@android:drawable/edit_text" />

上面的缺点是不同的设备样式是不一样的,因此可以采用切图的方式自定义样式。总之要避免为EidtText设置一个点击监听器,因为Button更安全,用户无法修改文本。

4、在onCreate()方法中获取View的宽度和高度

在onCreate()中读取视图的尺寸返回0,绘制布局由两个遍历过程组成:测量过程和布局过程。测量过程由measure方法完成,该方法从上到下遍历视图树,每个视图都保存各自的尺寸和规格。第二个过程由layout完成,每个父视图通过测量过程的结果定位所有子视图的位置信息。

只有在整个布局绘制完毕后,视图才能得到自身的宽和高。开发者可以使用View的post()的方法解决上述问题,该方法接收一个Runnable线程参数,并将其添加到UI线程的消息队列中。

5、移除背景以提升Activity启动速度

DecorView是视图树的根节点,默认情况下,框架层会以默认背景色填充窗口,而根节点是持有窗口背景图片的视图。若是应用使用不透明的界面或者自定义背景,nd那么绘制默认背景色就完全是在浪费时间。可以在主题中加入:<item name="android:windowBackground">@null</item>

0 0
原创粉丝点击