Android 表格布局
Android TableLayout 将视图组排列成行和列。 您将使用 <TableRow> 元素在表中构建一行。 每行有零个或多个单元格; 每个单元格可以容纳一个 View 对象。
TableLayout 表格布局容器不会为其行、列或单元格显示边框线。
表格布局属性
以下是特定于 TableLayout 的重要属性 −
序号 | 属性 & 描述 |
---|---|
1 |
android:id 这是唯一标识布局的 ID。 |
2 |
android:collapseColumns 这指定要折叠的列的从零开始的索引。 列索引必须用逗号分隔: 1, 2, 5. |
3 |
android:shrinkColumns 要收缩的列的从零开始的索引。 列索引必须用逗号分隔: 1, 2, 5. |
4 |
android:stretchColumns 要拉伸的列的从零开始的索引。 列索引必须用逗号分隔: 1, 2, 5. |
示例
本示例将通过简单的步骤向您展示如何使用表格布局创建您自己的 Android 应用程序。 按照以下步骤修改我们在 Hello World 示例章节中创建的 Android 应用程序 −
步骤 | 描述 |
---|---|
1 | 您将使用 Android Studio IDE 创建一个 Android 应用程序,并将其命名为 demo,位于包 com.example.demo 下,如 Hello World 示例 一章中所述。 |
2 | 修改 res/layout/activity_main.xml 文件的默认内容以在表格布局中包含一些小部件。 |
3 | 无需修改 string.xml,Android Studio 负责默认常量 |
4 | 运行应用程序以启动 Android 模拟器并验证应用程序中所做更改的结果。 |
以下是修改后的主活动文件 src/com.example.demo/MainActivity.java 的内容。 该文件可以包含每个基本生命周期方法。
package com.example.demo; import android.os.Bundle; import android.app.Activity; import android.view.Menu; public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } }
以下是 res/layout/activity_main.xml 文件的内容 −
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent"> <TableRow android:layout_width="fill_parent" android:layout_height="fill_parent"> <TextView android:text="Time" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_column="1" /> <TextClock android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/textClock" android:layout_column="2" /> </TableRow> <TableRow> <TextView android:text="First Name" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_column="1" /> <EditText android:width="200px" android:layout_width="wrap_content" android:layout_height="wrap_content" /> </TableRow> <TableRow> <TextView android:text="Last Name" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_column="1" /> <EditText android:width="100px" android:layout_width="wrap_content" android:layout_height="wrap_content" /> </TableRow> <TableRow android:layout_width="fill_parent" android:layout_height="fill_parent"> <RatingBar android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/ratingBar" android:layout_column="2" /> </TableRow> <TableRow android:layout_width="fill_parent" android:layout_height="fill_parent"/> <TableRow android:layout_width="fill_parent" android:layout_height="fill_parent"> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Submit" android:id="@+id/button" android:layout_column="2" /> </TableRow> </TableLayout>
以下将是 res/values/strings.xml 的内容来定义两个新常量 −
<?xml version="1.0" encoding="utf-8"?> <resources> <string name="app_name">HelloWorld</string> <string name="action_settings">Settings</string> </resources>
让我们尝试运行我们刚刚修改的 Hello World! 应用程序。 I assume you had created your AVD while doing environment setup. 要从 Android Studio 运行应用程序,请打开项目的活动文件之一,然后单击工具栏中的 Run 图标。 Android Studio 在您的 AVD 上安装应用程序并启动它,如果您的设置和应用程序一切正常,它将显示以下 Emulator 窗口 −