Android 简明教程

Android - UI Controls

ui control

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 Controls

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

Sr.No.

UI Control & Description

1

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

2

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

3

AutoCompleteTextView AutoCompleteTextView是一个与EditText类似的视图,除了它会在用户键入时自动显示完成功本提示列表。

4

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

5

ImageButton ImageButton是一个AbsoluteLayout,它使您能够指定其子级的精确位置。这显示了一个按钮,其中包含一个图像(而不是文本),用户可以按下或单击它。

6

CheckBox 一个开/关开关,用户可以切换该开关。当向用户显示一组不可互斥的可选项时,您应该使用复选框。

7

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

8

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

9

RadioGroup 单选按钮组用于组合一个或多个单选按钮。

10

ProgressBar 进度条视图提供关于一些正在进行的任务的可视反馈,例如,当您在后台执行任务时。

11

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

12

TimePicker 时间选择器视图使用户可以选择一天中的时间,采用 24 小时制或上午/下午制。

13

DatePicker 日期选择器视图使用户可以选择一天中的日期。

Create UI Controls

输入控件是应用程序用户界面中的交互式组件。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>

然后,最后创建控件对象的实例并从布局中获取,使用以下内容 −

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