?
本文檔使用 php中文網(wǎng)手冊 發(fā)布
EditText
農(nóng)民伯伯
版本:Android 2.2
java.lang.Object
android.view.View
android.widget.TextView ? ? ???
android.widget.EditText
?
直接子類:
AutoCompleteTextView, ExtractEditText
?
間接子類:
MultiAutoCompleteTextView
?
繼承自TextView的xml屬性說明:
屬性名稱 |
描述 |
android:autoLink |
設(shè)置是否當文本為URL鏈接/email/電話號碼/map時,文本顯示為可點擊的鏈接。可選值(none/web/email/phone/map/all)。這里只有在同時設(shè)置text時才自動識別鏈接,后來輸入的無法自動識別。 |
android:autoText |
自動拼寫幫助。這里單獨設(shè)置是沒有效果的,可能需要其他輸入法輔助才行,效果參見視頻。 |
android:bufferType |
指定getText()方式取得的文本類別。選項editable 類似于StringBuilder可追加字符, 也就是說getText后可調(diào)用append方法設(shè)置文本內(nèi)容。spannable 則可在給定的字符區(qū)域使用樣式,參見 這里1、 這里2。 |
android:capitalize |
設(shè)置英文字母大寫類型。設(shè)置如下值:sentences僅第一個字母大寫;words每一個單詞首字母大小,用空格區(qū)分單詞;characters每一個英文字母都大寫。在模擬器上用PC鍵盤直接輸入可以出效果,但是用軟鍵盤無效果。 |
android:cursorVisible |
設(shè)定光標為顯示/隱藏,默認顯示。如果設(shè)置false,即使選中了也不顯示光標欄。 |
android:digits |
設(shè)置允許輸入哪些字符。如“1234567890.+-*/%\n()” |
android:drawableTop |
在text的正上方輸出一個drawable。在EditView中的效果比較搞笑: |
android:drawableBottom |
在text的下方輸出一個drawable(如圖片)。如果指定一個顏色的話會把text的背景設(shè)為該顏色,并且同時和background使用時覆蓋后者。 |
android:drawableLeft |
在text的左邊輸出一個drawable(如圖片)。 |
android:drawablePadding |
設(shè)置text與drawable(圖片)的間隔,與drawableLeft、drawableRight、drawableTop、drawableBottom一起使用,可設(shè)置為負數(shù),單獨使用沒有效果。 |
android:drawableRight |
在text的右邊輸出一個drawable,如圖片。 |
android:editable |
設(shè)置是否可編輯。仍然可以獲取光標,但是無法輸入。 |
android:editorExtras |
指定特定輸入法的擴展,如“com.mydomain.im.SOME_FIELD”。源碼跟蹤至EditorInfo.extras,暫無相關(guān)實現(xiàn)代碼。 |
android:ellipsize |
設(shè)置當文字過長時,該控件該如何顯示。有如下值設(shè)置:”start”—–省略號顯示在開頭;”end”——省略號顯示在結(jié)尾;”middle”—-省略號顯示在中間;”marquee” ——以跑馬燈的方式顯示(動畫橫向移動) |
android:freezesText |
設(shè)置保存文本的內(nèi)容以及光標的位置。參見:這里。 |
android:gravity |
設(shè)置文本位置,如設(shè)置成“center”,文本將居中顯示。 |
android:hint |
Text為空時顯示的文字提示信息,可通過textColorHint設(shè)置提示信息的顏色。 |
android:imeOptions |
設(shè)置軟鍵盤的Enter鍵。有如下值可設(shè)置:normal,actionUnspecified,actionNone,actionGo,actionSearch,actionSend,actionNext,actionDone,flagNoExtractUi,flagNoAccessoryAction,flagNoEnterAction??捎?/span>’|’設(shè)置多個。這里僅設(shè)置顯示圖標之用,參見文章末尾例子。 |
android:imeActionId |
設(shè)置IME動作ID,在onEditorAction中捕獲判斷進行邏輯操作。 |
android:imeActionLabel |
設(shè)置IME動作標簽。但是不能保證一定會使用,猜想在輸入法擴展的時候應(yīng)該有用。 |
android:includeFontPadding |
設(shè)置文本是否包含頂部和底部額外空白,默認為true。 |
android:inputMethod |
為文本指定輸入法,需要完全限定名(完整的包名)。例如:com.google.android.inputmethod.pinyin,但是這里報錯找不到。關(guān)于自定義輸入法參見這里。 sentences僅第一個字母大寫;words每一個單詞首字母大小,用空格區(qū)分單詞;characters每一個英文字母都大寫 |
android:inputType |
設(shè)置文本的類型,用于幫助輸入法顯示合適的鍵盤類型。有如下值設(shè)置:none、text、textCapCharacters字母大小、textCapWords單詞首字母大小、textCapSentences僅第一個字母大小、textAutoCorrect、textAutoComplete自動完成、textMultiLine多行輸入、textImeMultiLine輸入法多行(如果支持)、textNoSuggestions不提示、textEmailAddress電子郵件地址、textEmailSubject郵件主題、textShortMessage短信息(會多一個表情按鈕出來,點開如下圖: )、textLongMessage長訊息?、textPersonName人名、textPostalAddress地址、textPassword密碼、textVisiblePassword可見密碼、textWebEditText作為網(wǎng)頁表單的文本、textFilte文本篩選過濾、textPhonetic拼音輸入、numberSigned有符號數(shù)字格式、numberDecimal可帶小數(shù)點的浮點格式、phone電話號碼、datetime時間日期、date日期、time時間。部分參考這里。 |
android:marqueeRepeatLimit |
在ellipsize指定marquee的情況下,設(shè)置重復滾動的次數(shù),當設(shè)置為 |
android:ems |
設(shè)置TextView的寬度為N個字符的寬度。參見TextView中此屬性的截圖。 |
android:maxEms |
設(shè)置TextView的寬度為最長為N個字符的寬度。與ems同時使用時覆蓋ems選項。 |
android:minEms |
設(shè)置TextView的寬度為最短為N個字符的寬度。與ems同時使用時覆蓋ems選項。 |
android:maxLength |
限制輸入字符數(shù)。如設(shè)置為5,那么僅可以輸入5個漢字/數(shù)字/英文字母。 |
android:lines |
設(shè)置文本的行數(shù),設(shè)置兩行就顯示兩行,即使第二行沒有數(shù)據(jù)。 |
android:maxLines |
設(shè)置文本的最大顯示行數(shù),與width或者layout_width結(jié)合使用,超出部分自動換行,超出行數(shù)將不顯示。 |
android:minLines |
設(shè)置文本的最小行數(shù),與lines類似。 |
android:linksClickable |
設(shè)置鏈接是否點擊連接,即使設(shè)置了autoLink。 |
android:lineSpacingExtra |
設(shè)置行間距。 |
android:lineSpacingMultiplier |
設(shè)置行間距的倍數(shù)。如”1.2” |
android:numeric |
如果被設(shè)置,該TextView有一個數(shù)字輸入法。有如下值設(shè)置:integer正整數(shù)、signed帶符號整數(shù)、decimal帶小數(shù)點浮點數(shù)。 |
android:password |
以小點”.”顯示文本 |
android:phoneNumber |
設(shè)置為電話號碼的輸入方式。 |
android:privateImeOptions |
提供額外的輸入法選項(字符串格式)。依據(jù)輸入法而決定是否提供,如這里所見。自定義輸入法繼承 InputMethodService。這篇文章也許有幫助。 |
android:scrollHorizontally |
設(shè)置文本超出TextView的寬度的情況下,是否出現(xiàn)橫拉條。 |
android:selectAllOnFocus |
如果文本是可選擇的,讓他獲取焦點而不是將光標移動為文本的開始位置或者末尾位置。TextView中設(shè)置后無效果。 |
android:shadowColor |
指定文本陰影的顏色,需要與shadowRadius一起使用。參見TextView中此屬性的截圖。 |
android:shadowDx |
設(shè)置陰影橫向坐標開始位置。 |
android:shadowDy |
設(shè)置陰影縱向坐標開始位置。 |
android:shadowRadius |
設(shè)置陰影的半徑。設(shè)置為0.1就變成字體的顏色了,一般設(shè)置為3.0的效果比較好。 |
android:singleLine |
設(shè)置單行顯示。如果和layout_width一起使用,當文本不能全部顯示時,后面用“…”來表示。如android:text="test_ singleLine " android:singleLine="true" android:layout_width="20dp"將只顯示“t…”。如果不設(shè)置singleLine或者設(shè)置為false,文本將自動換行 |
android:text |
設(shè)置顯示文本. |
android:textAppearance |
設(shè)置文字外觀。如“?android:attr/textAppearanceLargeInverse
”這里引用的是系統(tǒng)自帶的一個外觀,?表示系統(tǒng)是否有這種外觀,否則使用默認的外觀??稍O(shè)置的值如下:textAppearanceButton/textAppearanceInverse/textAppearanceLarge/textAppearanceLargeInverse/textAppearanceMedium/textAppearanceMediumInverse/textAppearanceSmall/textAppearanceSmallInverse |
android:textColor |
設(shè)置文本顏色 |
android:textColorHighlight |
被選中文字的底色,默認為藍色 |
android:textColorHint |
設(shè)置提示信息文字的顏色,默認為灰色。與hint一起使用。 |
android:textColorLink |
文字鏈接的顏色. |
android:textScaleX |
設(shè)置文字縮放,默認為1.0f。參見TextView的截圖。 |
android:textSize |
設(shè)置文字大小,推薦度量單位”sp”,如”15sp” |
android:textStyle |
設(shè)置字形[bold(粗體) 0, italic(斜體) 1, bolditalic(又粗又斜) 2] 可以設(shè)置一個或多個,用“|”隔開 |
android:typeface |
設(shè)置文本字體,必須是以下常量值之一:normal 0, sans 1, serif 2, monospace(等寬字體) 3] |
android:height |
設(shè)置文本區(qū)域的高度,支持度量單位:px(像素)/dp/sp/in/mm(毫米) |
android:maxHeight |
設(shè)置文本區(qū)域的最大高度 |
android:minHeight |
設(shè)置文本區(qū)域的最小高度 |
android:width |
設(shè)置文本區(qū)域的寬度,支持度量單位:px(像素)/dp/sp/in/mm(毫米),與layout_width的區(qū)別看這里。 |
android:maxWidth |
設(shè)置文本區(qū)域的最大寬度 |
android:minWidth |
設(shè)置文本區(qū)域的最小寬度 |
?
?
android:imeOptions例子:
??? <EditText android:id="@+id/txtTest" android:imeOptions="actionGo"
??? ?android:layout_width="100dp" android:layout_height="wrap_content"></EditText>
?
((EditText)findViewById(R.id.txtTest)).setOnEditorActionListener(new TextView.OnEditorActionListener() {
?????????? @Override
?????????? public boolean onEditorAction(TextView v, int actionId,
????????????????? KeyEvent event) {
????????????? if (actionId == EditorInfo.IME_ACTION_GO) {
????????????????? Toast.makeText(TestActivity.this, "你點了Go!", Toast.LENGTH_SHORT).show();
????????????? }
????????????? return false;
?????????? }
});