Android开发优化之——对界面UI的优化(2)

在一个应用程序中,通常都会存在多个Activity,每一个Activity对应着一个UI布局文件。通常来讲,为了保持不一样窗口之间的风格统一,在这些UI布局文件中,几乎确定会用到不少相同的布局。若是咱们在每一个xml文件中都把相同的布局都重写一遍,一个是代码冗余,可读性不好;另外一个是修改起来比较麻烦,对后期的修改和维护很是不利。因此,通常状况下,咱们须要把相同布局的代码单独写成一个模块,而后在用到的时候,能够经过<include /> 标签来重用layout的代码。java

常见的,有的应用在最上方会有一个标题栏。相似下图所示。android

图 标题栏的示例web

   若是项目中大部分Activity的布局都包含这样的标题栏,就能够把标题栏的布局单独写成一个xml文件。布局

<RelativeLayout
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:gravity="center"
    android:background="@drawable/navigator_bar_bg"
    xmlns:android="http://schemas.android.com/apk/res/android">
    <TextView
        android:id="@android:id/title"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_centerVertical="true"
        android:gravity="center"
        android:hint="title"
        android:textAppearance="?android:attr/textAppearanceMedium" />
    <ImageView
        android:id="@android:id/closeButton"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentRight="true"
        android:src="@drawable/close" />
</RelativeLayout>

咱们将上面的xml文件命名为“navigator_bar.xml”,其它须要标题栏的Activity的xml布局文件就能够直接引用此文件了。ui

<include layout="@layout/navigator_bar" />

 

经验分享:spa

通常状况下,在项目的初期就可以大体肯定总体UI的风格。因此早期的时候就能够作一些规划,将通用的模块先写出来。.net

下面是可能能够抽出的共用的布局:code

1)背景。有的应用在不一样的界面里会用到统一的背景。后期可能会常常修改默认背景,因此能够将背景作成一个通用模块。orm

2)头部的标题栏。若是应用有统一的头部标题栏,就能够抽取出来。xml

3)底部的导航栏。若是应用有导航栏,并且大部分的Activity的底部导航栏是相同的,就能够将导航栏写成一个通用模块。

4)ListView。大部分应用都会用到ListView展现多条数据。项目后期可能会常常调整ListView的风格,因此将ListView做为一个通用的模块比较好。

 

---------------------------------------------------------------------------

http://blog.csdn.net/arui319

《Android应用开发精解》已出版,本文是初稿的部份内容。欢迎购买阅读。

本文能够转载,可是请保留以上做者信息。

谢谢。

---------------------------------------------------------------------------

相关文章
相关标签/搜索