<?xml version="1.0" encoding="utf-8"?>
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="match_parent"
android:stretchColumns="*" >
<TableRow
android:id="@+id/tableRow1"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/username_label"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right|center_vertical"
android:text="用户名:" />
<EditText
android:id="@+id/editText1"
android:layout_height="wrap_content"
android:ems="10"
android:hint="请输入用户名" />
</TableRow>
<TableRow
android:id="@+id/tableRow2"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right|center_vertical"
android:text="密码:" />
<EditText
android:id="@+id/editText2"
android:layout_height="wrap_content"
android:ems="10"
android:hint="请设定密码"
android:inputType="textPassword" >
<requestFocus />
</EditText>
</TableRow>
<TableRow
android:id="@+id/tableRow3"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<Space
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right" >
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="登录" />
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="注册" />
</LinearLayout>
</TableRow>
</TableLayout>
- 在TableLayout中使用stretchColumns=”*”伸展所有界面组件,以使得屏幕得到充分利用。
- 用户名和密码的Lable的宽度通常只需要wrap_content即可,gravity设置为right|center_vertical居右显示。
- 文本输入框(EditText域)的宽度在stretchColumns=”*”的情况下可以不设置,由系统自动确定宽度。
- 使用嵌套的LinearLayout进行两个按钮的布局,并且LinearLayout的gravity设置为right,使得两个按钮居右显示。注意,需要一个space(空的界面组件)来占据表格的第一列。