iT邦幫忙

2024 iThome 鐵人賽

DAY 6
0

EditText主要是用來讓使用者能夠在應用程式中利用手動來輸入文字內容的UI元件
它類似於網頁中的輸入框,可用來輸入要求的使用者輸入的相關訊息
(在Palette中要找到EditText要找Plain Text)
這是EditText初始的基本屬性

<EditText
        android:id="@+id/editTextText"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:ems="10"
        android:inputType="text"
        android:text="Name"
        tools:layout_editor_absoluteX="98dp"
        tools:layout_editor_absoluteY="176dp" />

ems可以用來調整EditText的寬度
但需要注意的是必須在layout_width設定為wrap_content的情況下才生效
若是在match_parent或是將寬度固定(如8dp等)的情況下是無法生效的

接下來來介紹幾個比較常見的屬性,例如
有時候需要控制使用者輸入內容的話可以利用到inputType屬性來限制

android:inputType="text"

inputType屬性是用來限制使用者輸入的,下面會簡單介紹幾個比較常用的,如
text是輸入一般的普通文字
textPassword是用來輸入密碼的,使用者在輸入內容後會變成隱藏的樣子
number是用來輸入數字的,會直接把使用者的鍵盤變成純數字鍵盤
phone是用來輸入電話號碼的,會直接把使用者的鍵盤變成電話鍵盤

接著我想介紹一下EditText中我個人認為比較重要的兩個屬性

android:text="Name"
android:hint="Name"

下面這張圖是使用text屬性時的EditText
Name的字體會直接輸入在EditText裡,若要輸入內容時可能會需要先將它刪除再進行輸入
https://ithelp.ithome.com.tw/upload/images/20240914/20168456pn9dGyHi1q.png
hint屬性是可以將預設的字體顯示成提示的屬性
若是將原本的text屬性改成hint的話,Name將會顯示在EditText的後方,且只有在沒有輸入任何內容時才會顯現
https://ithelp.ithome.com.tw/upload/images/20240914/20168456nCDQ8fDjZe.png

還有一個特別的屬性,有時候會希望限制使用著能夠輸入的最多字數
這時候就可以用到maxLength來限制使用者

android:maxLength="10"

上面這行就是在限制使用者最多就只能輸入10個字符而已不能在多了

今天就先到介紹到這裡
下篇將會介紹ImageView


上一篇
【Day 05】TextView介紹
下一篇
[Day 07] ImageView介紹
系列文
深入Android Java程式語言 - 打造我的行動應用30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言