Android2.2 API 中文文檔系列(2) —— EditText

前言php

   關鍵字: Android API 中文,android sdk 中文,Android EditText 詳解
 html

 

聲明java

  歡迎轉載,但請保留文章原始出處:)
 android

    農民伯伯:http://over140.blog.51cto.com/git

 

 

正文github

  1、結構web

    java.lang.Object
      android.view.View
         android.widget.TextView        
           android.widget.EditText

    已知直接子類:
      AutoCompleteTextView, ExtractEditText

    已知間接子類:
      MultiAutoCompleteTextViewapi

    

  2、xml屬性
 app

屬性名稱dom

描述

android:autoLink

設置是否當文本爲URL連接/email/電話號碼/map時,文本顯示爲可點擊的連接。可選值(none/web/email/phone/map/all)。這裏只有在同時設置text時才自動識別連接,後來輸入的沒法自動識別。

android:autoText

自動拼寫幫助。這裏單獨設置是沒有效果的,可能須要其餘輸入法輔助才行,效果參見視頻

android:bufferType

指定getText()方式取得的文本類別。選項editable 相似於StringBuilder可追加字符,

也就是說getText後可調用append方法設置文本內容。spannable 則可在給定的字符區域使用樣式,參見這裏1這裏2

android:capitalize

設置英文字母大寫類型。設置以下值:sentences僅第一個字母大寫;words每個單詞首字母大小,用空格區分單詞;characters每個英文字母都大寫。在模擬器上用PC鍵盤直接輸入能夠出效果,可是用軟鍵盤無效果。

android:cursorVisible

設定光標爲顯示/隱藏,默認顯示。若是設置false,即便選中了也不顯示光標欄。

android:digits

設置容許輸入哪些字符。如「1234567890.+-*/%\n()

android:drawableTop

text的正上方輸出一個drawable。在EditView中的效果比較搞笑: ,竟然在文本框裏,並且刪不了。

android:drawableBottom

text的下方輸出一個drawable,如圖片。若是指定一個顏色的話會把text的背景設爲該顏色,而且同時和background使用時覆蓋後者。

android:drawableLeft

text的左邊輸出一個drawable(如圖片)。

android:drawablePadding

設置textdrawable(圖片)的間隔,與drawableLeftdrawableRightdrawableTopdrawableBottom一塊兒使用,可設置爲負數,單獨使用沒有效果。

android:drawableRight

text的右邊輸出一個drawable,如圖片。

android:editable

設置是否可編輯。仍然能夠獲取光標,可是沒法輸入。

android:editorExtras

指定特定輸入法的擴展,如「com.mydomain.im.SOME_FIELD」。源碼跟蹤至EditorInfo.extras,暫無相關實現代碼。

android:ellipsize

設置當文字過長時,該控件該如何顯示。有以下值設置:」start」—–省略號顯示在開頭;」end」——省略號顯示在結尾;」middle」—-省略號顯示在中間;」marquee」 ——×××燈的方式顯示(動畫橫向移動)

android:freezesText

設置保存文本的內容以及光標的位置。參見:這裏

android:gravity

設置文本位置,如設置成「center」,文本將居中顯示。

android:hint

Text爲空時顯示的文字提示信息,可經過textColorHint設置提示信息的顏色。

android:imeOptions

設置軟鍵盤的Enter鍵。有以下值可設置:normalactionUnspecifiedactionNoneactionGo

actionSearchactionSendactionNextactionDone

flagNoExtractUiflagNoAccessoryActionflagNoEnterAction。可用’|’設置多個。這裏僅設置顯示圖標之用,參見文章末尾例子。

android:imeActionId

設置IME動做ID,在onEditorAction中捕獲判斷進行邏輯操做。

android:imeActionLabel

設置IME動做標籤。可是不能保證必定會使用,猜測在輸入法擴展的時候應該有用。

android:includeFontPadding

設置文本是否包含頂部和底部額外空白,默認爲true

android:inputMethod

爲文本指定輸入法,須要徹底限定名(完整的包名)。例如:com.google.android.inputmethod.pinyin,可是這裏報錯找不到。關於自定義輸入法參見這裏

android:inputType

設置文本的類型,用於幫助輸入法顯示合適的鍵盤類型。有以下值設置:nonetexttextCapCharacters字母大小、textCapWords單詞首字母大小、textCapSentences僅第一個字母大小、textAutoCorrecttextAutoComplete自動完成、textMultiLine多行輸入、textImeMultiLine輸入法多行(若是支持)、textNoSuggestions不提示、textEmailAddress電子郵件地址、textEmailSubject郵件主題、textShortMessage短信息(會多一個表情按鈕出來,點開以下圖:

 

textLongMessage長訊息?textPersonName人名、textPostalAddress地址、textPassword密碼、textVisiblePassword可見密碼、textWebEditText做爲網頁表單的文本、textFilte文本篩選過濾、textPhonetic拼音輸入、numberSigned有符號數字格式、numberDecimal可帶小數點的浮點格式、phone電話號碼、datetime時間日期、date日期、time時間。部分參考這裏

android:marqueeRepeatLimit

ellipsize指定marquee的狀況下,設置重複滾動的次數,當設置爲marquee_forever時表示無限次。

android:ems

設置TextView的寬度爲N個字符的寬度。參見TextView中此屬性的截圖。

android:maxEms

設置TextView的寬度爲最長爲N個字符的寬度。與ems同時使用時覆蓋ems選項。

android:minEms

設置TextView的寬度爲最短爲N個字符的寬度。與ems同時使用時覆蓋ems選項。

android:maxLength

限制輸入字符數。如設置爲5,那麼僅能夠輸入5個漢字/數字/英文字母。

android:lines

設置文本的行數,設置兩行就顯示兩行,即便第二行沒有數據。

android:maxLines

設置文本的最大顯示行數,與width或者layout_width結合使用,超出部分自動換行,超出行數將不顯示。

android:minLines

設置文本的最小行數,與lines相似。

android:linksClickable

設置連接是否點擊鏈接,即便設置了autoLink

android:lineSpacingExtra

設置行間距。

android:lineSpacingMultiplier

設置行間距的倍數。如」1.2」

android:numeric

若是被設置,該TextView有一個數字輸入法。有以下值設置:integer正整數、signed帶符號整數、decimal帶小數點浮點數。

android:password

以小點」.」顯示文本

android:phoneNumber

設置爲電話號碼的輸入方式。

android:privateImeOptions

提供額外的輸入法選項(字符串格式)。依據輸入法而決定是否提供,如這裏所見。自定義輸入法繼承

InputMethodService這篇文章也許有幫助。

android:scrollHorizontally

設置文本超出TextView的寬度的狀況下,是否出現橫拉條。

android:selectAllOnFocus

若是文本是可選擇的,讓他獲取焦點而不是將光標移動爲文本的開始位置或者末尾位置。TextView中設置後無效果。

android:shadowColor

指定文本陰影的顏色,須要與shadowRadius一塊兒使用。參見TextView中此屬性的截圖。

android:shadowDx

設置陰影橫向座標開始位置。

android:shadowDy

設置陰影縱向座標開始位置。

android:shadowRadius

設置陰影的半徑。設置爲0.1就變成字體的顏色了,通常設置爲3.0的效果比較好。

android:singleLine

設置單行顯示。若是和layout_width一塊兒使用,當文本不能所有顯示時,後面用「」來表示。如android:text="test_ singleLine " android:singleLine="true" android:layout_width="20dp"將只顯示「t…」。若是不設置singleLine或者設置爲false,文本將自動換行

android:text

設置顯示文本.

android:textAppearance

設置文字外觀。如「?android:attr/textAppearanceLargeInverse

」這裏引用的是系統自帶的一個外觀,?表示系統是否有這種外觀,不然使用默認的外觀。可設置的值以下:textAppearanceButton/textAppearanceInverse/textAppearanceLarge/textAppearanceLargeInverse/textAppearanceMedium/textAppearanceMediumInverse/textAppearanceSmall/textAppearanceSmallInverse

android:textColor

設置文本顏色

android:textColorHighlight

被選中文字的底色,默認爲藍色

android:textColorHint

設置提示信息文字的顏色,默認爲灰色。與hint一塊兒使用。

android:textColorLink

文字連接的顏色.

android:textScaleX

設置文字之間間隔,默認爲1.0f。參見TextView的截圖。

android:textSize

設置文字大小,推薦度量單位」sp」,如」15sp」

android:textStyle

設置字形[bold(粗體) 0, italic(斜體) 1, bolditalic(又粗又斜) 2] 能夠設置一個或多個,用「|」隔開

android:typeface

設置文本字體,必須是如下常量值之一:normal 0, sans 1, serif 2, monospace(等寬字體) 3]

android:height

設置文本區域的高度,支持度量單位:px(像素)/dp/sp/in/mm(毫米)

android:maxHeight

設置文本區域的最大高度

android:minHeight

設置文本區域的最小高度

android:width

設置文本區域的寬度,支持度量單位:px(像素)/dp/sp/in/mm(毫米),與layout_width的區別看這裏

android:maxWidth

設置文本區域的最大寬度

android:minWidth

設置文本區域的最小寬度

     補充說明:

      a).  因爲是繼承自TextView,因此屬性是同樣的,可是這裏重點補充了輸入法相關的屬性說明和研究,部分註釋也作了相應的調整。

      b).  Word格式下載

        http://download.csdn.net/source/2664164

 

  3、例子

    3.1   <!--[endif]-->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 ;
            }
        });


 

結束
 

   有朋友提議是否組織一下一塊兒來翻譯,這裏我以爲能夠這樣:若是有興趣,能夠翻譯好以後給我一個連接或者直接在我博客裏面整理了發佈出來,在此會補上翻譯人以及原文地址,這樣約束較低可是沒有門檻,但願有志者熱心參與,邊翻譯邊等待完整版的中文API出來 :)  

相關文章
相關標籤/搜索