位置:首頁 > 手機開發 > Android開發教學 > Android UI控件

Android UI控件

Android應用程序的用戶界麵是一切,用戶可以看到並與之交互。已經解了並用它定位在活動中的各種視圖的布局。本章會給詳細視圖的各方麵。

視圖(View)是一個對象繪製在屏幕上,用戶可以互動的東西,ViewGroup 是一個對象,其中包含其他View(ViewGroup)的對象,並可以定義用戶界麵的布局。

視圖可以定義在一個XML文件,它提供了一個人類可讀的結構布局,類似於HTML布局。例如,一個簡單的垂直布局,文本視圖(TextView)和按鈕(Button)看起來像這樣:

<?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控件,允許建立應用程序的圖形用戶界麵。

S.N. UI控件與說明
1 TextView
這種控製用於顯示文本給用戶。
2 EditText
EditText是TextView預定義的子類,包括豐富的編輯功能。
3 AutoCompleteTextView
AutoCompleteTextView是一個視圖,它類似於EditText,不同之處是在用戶鍵入時,它會顯示自動完成建議的列表。
4 Button
按鈕式可以被按壓,或者點擊 - 由用戶執行動作。
5 ImageButton
AbsoluteLayout使可以指定其子視圖的確切位置。
6 CheckBox
可以由用戶來切換開/關。提供一組可選擇的選項並不相互排斥時候呈現用戶,應該使用複選框。
7 ToggleButton
一個開/關按鈕帶有指示燈。
8 RadioButton
單選按鈕有兩種狀態:選中或取消選中。
9 RadioGroup
RadioGroup用於組織一個或多個單選按鈕。
10 ProgressBar
進度條視圖(ProgressBar)提供一些日常任務,當在後台執行任務時,給出視覺反饋。
11 Spinner
一個下拉列表,允許用戶選擇從一組一個值(類似HTML中的select)
12 TimePicker
TimePicker視圖允許用戶選擇一天中的時間,在24小時模式或AM/ PM模式。
13 DatePicker
TimePicker視圖允許用戶選擇一天中的時間,在24小時模式或AM/PM模式。

創建UI控件

正如在前麵的章節中,視圖對象可能有一個唯一的ID分配給,這個唯一識彆視圖樹內。一個視圖ID在XML標簽的語法是:

android:id="@+id/text_id"

要創建一個用戶界麵控件/視圖/小工具,必須在布局文件中定義一個視圖/部件,並將其分配一個唯一的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);