Android(安卓)UI 控件

用户界面元素
视图是在屏幕上绘制用户可以交互的对象,ViewGroup 是保存其他视图(和 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 mageButton 是一种 AbsoluteLayout,它让您可以指定其子项的确切位置这显示了一个带有图像(而不是文本)的按钮,用户可以按下或单击该按钮。 |
| 6 | CheckBox 用户可以切换的 on/off 的开关向用户显示一组互不排斥的可选选项时,应使用复选框。 |
| 7 | ToggleButton 带有指示的 on/off 的开关按钮。 |
| 8 | RadioButton RadioButton 有两种状态:选中或未选中。 |
| 9 | RadioGroup RadioGroup 用于将一个或多个 RadioButton 组合在一起。 |
| 10 | ProgressBar ProgressBar 视图提供有关某些正在进行的任务的可视化反馈,例如当您在后台执行任务时。 |
| 11 | Spinner 让用户从集合中选择一个值的下拉列表。 |
| 12 | TimePicker TimePicker 视图让用户可以在 24 小时模式或 AM/PM 模式下选择一天中的时间。 |
| 13 | DatePicker DatePicker 视图让用户可以选择一天的日期。 |
创建 UI 控件
输入控件是应用程序用户界面中的交互组件。Android 提供了各种各样的控件,您可以在 UI 中使用,例如按钮、文本字段、搜索栏、复选框、缩放按钮、切换按钮等等。
如前一章所述,视图对象可能分配了一个唯一的 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);