Presentation is loading. Please wait.

Presentation is loading. Please wait.

EditText 元件可以透過 3 個屬性控制輸入的內 容: digitals 、 numeric 與 inputType 。 要讓模擬器提供軟體鍵盤,請於建立新模 擬器實體時,取消 Keyboard 欄「 Hardware keyboard present 」項目勾選,至於實際裝 置應該都有提供。

Similar presentations


Presentation on theme: "EditText 元件可以透過 3 個屬性控制輸入的內 容: digitals 、 numeric 與 inputType 。 要讓模擬器提供軟體鍵盤,請於建立新模 擬器實體時,取消 Keyboard 欄「 Hardware keyboard present 」項目勾選,至於實際裝 置應該都有提供。"— Presentation transcript:

1

2 EditText 元件可以透過 3 個屬性控制輸入的內 容: digitals 、 numeric 與 inputType 。 要讓模擬器提供軟體鍵盤,請於建立新模 擬器實體時,取消 Keyboard 欄「 Hardware keyboard present 」項目勾選,至於實際裝 置應該都有提供。 EditText 另一個經常使用的方式是密碼輸入, 將輸入的資料隱藏,這可以利用 「 android:inputType="textPassword" 」實現。

3 「 android:inputType="textVisiblePassword" 」, 這屬性設定值會使密碼顯示出來;密碼輸 入也可以利用屬性設定 「 android:password="true" 」完成。 「 onKey 」事件在有鍵被按下與放開時,由 目標視圖元件各產生一次,是 EditText 最常 處理的事件,但要注意軟體鍵盤的按鍵並 不會觸發此事件。 onKey 的偵聽器需要實體化「 OnKeyListener 」 介面為物體,且必需實作「 onKey(int, Event) 」 方法為事件處理方法。 註 : 若使用匿名事件,必須在實體化物件時, 接著定義匿名事件程序 (P.8-6)

4 + UITest_1 範例 – 範例在佈局中加入一個 TextView 與 EditText( 位於 TextView 下方 ) ,設定 TextView 的屬性 「 android:password="true" 」。 – 偵聽 TextView 的 onKey 事件,當發現 onKey 是因 按下「 Enter 」鍵而產生,則將在 EditText 輸入的 密碼從 TextView 顯示出來。 – 佈局檔與程式內容請參考原書。

5 + AutoCompleteTextView 元件類似於 EditText , 也是用以提供使用者輸入資料,但它能夠 提供含有一些可能建議內容的清單,讓使 用者可直接從中選取符合的內容。 + 使用時需先建立一個包括清單內容的字串 陣列,然後再建立陣列適應器 ( 轉接器 ArrayAdapter) ;建立陣列適應器需要 3 個參 數:適應器所在活動本身、適應器顯示樣 式識別碼、資料來源陣列。

6 接著用 AutoCompleteTextView 元件的 setThreshold 方法顯示清單所需輸入的字元 數設定。 最後用 AutoCompleteTextView 元件的 setAdapter(ArrayAdapter) 方法將剛建立的 ArrayAdapter 物件指定給此 AutoCompleteTextView 元件。 AutoComplete Test 範例 – 於佈局中加入一個 AutoCompleteTextView 元件。 – 於主程式中建立字串陣列、 ArrayAdapter ,將輸 入的字元數設為 1 。

7 – 將建立的 ArrayAdapter 指定給此 AutoCompleteTextView 元件。 – 佈局檔與程式內容請參考原書。 + 多欄自動完成輸入元件 (MultiAutoCompleteTextView) 延伸自自動完 成輸入元件,最大的差異是可以用指定符 號將輸入分成多個欄位,每個欄位都具有 相同的自動完成輸入內容清單。 – MultiAutoComplete Test 範例:佈局檔與程式內 容請參考原書。

8 影像按鈕與一般按鈕 – 影像按鈕在 XML 檔的標籤為 ,使用時 先將要設定的圖示 (.png 影像檔 ) 置於專案 「 \res\drawable\ 」資料夾中,再從佈局檔中設定 它的「 src 」屬性為「 ”@drawable/ 影像檔名 ( 不含附 檔名 ) 」即可。 – 影像按鈕只能顯示圖形,無法同時顯示文字與圖形。 – 如要同時顯示文字與圖形,還是得靠原來的按鈕元 件。按鈕元件的「 text 」屬性可以設定它顯示的標 題,而「 drawableTop 」、「 drawableBottom 」、 「 drawablwLeft 」、「 drawableRight 」 4 個屬性可以 設定在標題上、下、左、右所要顯示的影像。

9 – 新增一個存放影像的資料夾  從 Package Explorer 右敲專案。  從快選單選「 New>Folder 」命令。  從「 New Folder 」對話框,在 Folder name 欄位輸入 資料夾名稱「 drawable 」後按「 Finish 」鈕。 影像按鈕佈局請參考原書。

10 + 選項鈕 – 選項鈕的作用是將一些預先設定的選項群組起 來,讓使用者從中選擇一個,一定要選且也只 能選一個。 – 選項群組在 XML 檔中以 表示,選 項鈕為 。選項鈕相當於只有 2 種 狀態的按鈕:選取 (checked) 或未選 (unchecked) , 以布林值的「 checked 」屬性表示。 – 當一個選項群組內選項鈕狀態改變時會觸發 「 onCheckedChange 」事件,利用偵聽此事件並 處理,就能達到操作目的。 – RadioButton Test 範例請參考原書。

11 + 檢查框 – 檢查框 ( ) 與選項鈕很類似,最大差別 為被選項目的數量沒有限制。 – 當使用者敲擊檢查框會改變其選取狀態,同時 觸發「 onClick 」事件,檢查框選取狀態可以透 過其「 isChecked() 」方法回傳的布林值判定, 因此檢查框操作一般會建立「 OnClickListener 」 事件偵聽器,並實作 onClick 事件處理方法。 – CheckBox Test 範例請參考原書。

12 切換開關 – 切換開關 (ToggleButton) 的基本功能類似一般按 鈕,但是它又如同檢查框有 2 個狀態,而且可以 利用使用者的碰觸在「開 / 關」之間變換。 – ToggleButton 的 text 屬性無作用,預設顯示的內 容在「 On 」和「 Off 」之間變換,但可以分別用 「 textOn 」和「 textOff 」屬性設定開和關狀態 顯示的內容。 – ToggleButton 狀態改變時會觸發 「 onCheckedChanged 」事件,因此可以建立 「 OnCheckedChangeListener 」偵聽器並實作此 事件處理器,對此事件進行處理。

13 – 在觸發「 onCheckedChanged 」事件之前, ToggleButton 也觸發了 onClick 事件,我們也可以 藉由偵聽此事件進行處理。 – 從 Donut (Android 1.6 版本, API level 4) 開始 Android SDK 在 View 類別中提供了「 onClick 」屬 性,只要在活動執行期間,此 View 實體物件產 生 onClick 事件,這方法就會被系統呼叫執行。 – 從 Android 4.0(API level 14) 開始, Android SDK 提 供另一種新式的切換開關 -- 「 Switch 」,它的功 能及屬性與 ToggleButton 幾乎完全相同,只不過 它是以滑塊的形式控制切換開關的狀態。

14 – Toast 的目的是提供一些資訊給使用者。 Toast 以 「 makeText(Content, CharSequence, int) 」方法 設定要顯示的資訊,其中第 1 個參數設為 「 this 」,第 2 個參數是要顯示的內容,第 3 個參 數設定顯示的時間長度 (Toast.LENGTH_LONG 或 Toast.LENGTH_SHORT) ,並以 show() 方法使 Toast 出現。 – Toggle Test 範例 在佈局中加入 ToggleButton 與 Switch 這 2 種切換開關, 並設定其 onClick 屬性分別對應至 Java 程式的 ToggleClick(View) 與 SwitchClick(View) 方法。 於這 2 個切換開關產生 onClick 事件改變狀態時,透過 這方法利用 Toast 物件顯示切換開關狀態的資訊。 範例詳細內容請參考原書。

15 進度列 – Android 提供多種進度列的形式,有圓環形、長 條形、置於標題欄進度列等,可以透過「 style 」 屬性設定,其中圓環形是預設型式。 – Android 在長條形進度列提供有次要進度顯示功 能,即在同一個進度列顯示另一個工作的進度。 – 進度列可以用「 max 」屬性設定進度最大值 (100% 進度 ) 表示的數據,以「 progress 」屬性指 定目前工作進度,次要進度則以 「 secondaryProgress 」屬性指定。

16 – 長條形進度列以「 setProgress(int) 」與 「 setSecondaryProgress(int) 」方法設定目前進 度,以「 incrementProgressBy(int) 」與 「 incrementSecondaryProgressBy(int) 」方法增加 目前的進度,以「 getProgress(int) 」與 「 getSecondaryProgress(int) 」方法取得目前的 進度。 + 搜索列 – 搜索列 (SeekBar) 為進度列的延伸,因此擁有進 度列的所有屬性。 – 搜索列上的調整滑塊,可以透過「 thumb 」屬 性設定滑塊上顯示的圖形。

17 – 搜索列主要的互動是靠 OnSeekBarChangeListener 這事件偵聽介面完成, 這介面含有 3 建立此介面的物件時必須實作的個 抽象方法:  onProgressChanged(SeekBar, int, boolean) :搜索列進 度改變的事件處理方法。  onStartTrackingTouch(Seekbar) :使用者剛碰觸到搜索 列的事件處理方法。  onStopTrackingTouch(Seekbar) :使用者剛離開搜索列 的事件處理方法。

18 評等列 (RatingBar) – 一般我們習慣將評等分成 5 分 ( 即 5 顆星 ) 、 10 個等級, 每一等級 0.5 分相當於半顆星,但也可以用 「 numStars 」 XML 屬性或在 Java 程式以 「 setNumStart(int) 」方法設定。 – 如果要設定評等的最大等級,則可以用「 max 」 XML 屬性或在 Java 程式以「 setMax(int) 」方法設定。 – 「 rating 」 XML 屬性用以設定預設得到的等級 ( 或用 Java 程式的「 setRating(float) 」方法 ) 。 – 「 stepSize 」 XML 屬性指定等級增量 ( 或用 Java 程式 「 setStepSize(float) 」方法 ) ,「 isIndicator(boolean) 」 XML 屬性設定使用者能否更改評比等級。

19 – 「 style 」屬性可以設定 RatingBar 的格式。 – 對可以與使用者互動的評等列,使用者可以經 由碰觸改變評等,此時會產生 「 OnRatingChanged 」事件。 – Java 程式碼可以用「 getMax() 」方法取得此評等 列的最大評等等級,以「 getRating() 」方法取得 評等列目前獲得的評等等級。 + 佈局範例 (OtherDisplay Test) 請參考原書。


Download ppt "EditText 元件可以透過 3 個屬性控制輸入的內 容: digitals 、 numeric 與 inputType 。 要讓模擬器提供軟體鍵盤,請於建立新模 擬器實體時,取消 Keyboard 欄「 Hardware keyboard present 」項目勾選,至於實際裝 置應該都有提供。"

Similar presentations


Ads by Google