• Android Video Tutorials

Android - UI 控件



输入控件是应用程序用户界面中的交互式组件。Android 提供了各种可在 UI 中使用的控件,例如按钮、文本字段、寻求栏、复选框、缩放按钮、切换按钮等等。

UI Control

UI 元素

一个View 是一个在屏幕上绘制某些内容的对象,用户可以与之交互,而一个ViewGroup 是一个持有其他 View(和 ViewGroup)对象以定义用户界面布局的对象。

您在 XML 文件中定义布局,该文件为布局提供了一个类似于 HTML 的人类可读结构。例如,一个简单的垂直布局,带有一个文本视图和一个按钮,如下所示:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
   android:layout_width="fill_parent"
   android:layout_height="fill_parent"
   android:orientation="vertical" >
   
   <TextView android:id="@+id/text"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="I am a TextView" />
   
   <Button android:id="@+id/button"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="I am a Button" />
</LinearLayout>

Android UI 控件

Android 提供了许多 UI 控件,允许您构建应用程序的图形用户界面。

序号 UI 控件及描述
1 TextView

此控件用于向用户显示文本。

2 EditText

EditText 是 TextView 的预定义子类,它包含丰富的编辑功能。

3 AutoCompleteTextView

AutoCompleteTextView 类似于 EditText 的视图,不同之处在于它在用户键入时自动显示完成建议列表。

4 Button

一个按钮,用户可以按下或点击它来执行操作。

5 ImageButton

ImageButton 是一个 AbsoluteLayout,它允许您指定其子元素的确切位置。它显示一个带有图像(而不是文本)的按钮,用户可以按下或点击它。

6 CheckBox

一个开/关开关,用户可以切换。当向用户呈现一组非互斥的可选择选项时,应使用复选框。

7 ToggleButton

一个带指示灯的开/关按钮。

8 RadioButton

RadioButton 有两种状态:选中或未选中。

9 RadioGroup

RadioGroup 用于组合一个或多个 RadioButtons。

10 ProgressBar

ProgressBar 视图提供有关某些正在进行的任务的视觉反馈,例如在后台执行任务时。

11 Spinner

一个下拉列表,允许用户从一组值中选择一个值。

12 TimePicker

TimePicker 视图允许用户选择一天中的时间,以 24 小时制或 AM/PM 制显示。

13 DatePicker

DatePicker 视图允许用户选择一天中的日期。

创建 UI 控件

输入控件是应用程序用户界面中的交互式组件。Android 提供了各种可在 UI 中使用的控件,例如按钮、文本字段、寻求栏、复选框、缩放按钮、切换按钮等等。

如前一章所述,视图对象可能分配有唯一的 ID,该 ID 将在树中唯一地标识该视图。XML 标签内 ID 的语法为:

android:id="@+id/text_id"

要创建 UI 控件/视图/小部件,您必须在布局文件中定义视图/小部件并为其分配唯一的 ID,如下所示:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
   android:layout_width="fill_parent" 
   android:layout_height="fill_parent"
   android:orientation="vertical" >
   
   <TextView android:id="@+id/text_id"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="I am a TextView" />
</LinearLayout>

最后,创建 Control 对象的实例并从布局中捕获它,使用以下方法:

TextView myText = (TextView) findViewById(R.id.text_id);
广告