Android的布局管理:表格布局

比如要实现如下的界面:

可以联合使用TableLayout和LinearLayout达到上面的效果:

 
<?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(空的界面组件)来占据表格的第一列。  



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值