Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發實例 >> Android2.2 API 中文文檔系列(2) —— EditText

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

編輯:Android開發實例

前言

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

 

正文

  一、結構

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

    已知直接子類:
      AutoCompleteTextView, ExtractEditText

    已知間接子類:
      MultiAutoCompleteTextView

    

  二、xml屬性
 

 

屬性名稱

描述

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

設置text與drawable(圖片)的間隔,與drawableLeft、drawableRight、drawableTop、drawableBottom一起使用,可設置為負數,單獨使用沒有效果。

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鍵。有如下值可設置:normal,actionUnspecified,actionNone,actionGo

,actionSearch,actionSend,actionNext,actionDone

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

android:imeActionId

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

android:imeActionLabel

設置IME動作標簽。但是不能保證一定會使用,猜想在輸入法擴展的時候應該有用。

android:includeFontPadding

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

android:inputMethod

為文本指定輸入法,需要完全限定名(完整的包名)。例如:com.google.android.inputmethod.pinyin,但是這裡報錯找不到。關於自定義輸入法參見這裡

sentences僅第一個字母大寫;words每一個單詞首字母大小,用空格區分單詞;characters每一個英文字母都大寫

android:inputType

設置文本的類型,用於幫助輸入法顯示合適的鍵盤類型。有如下值設置:none、text、textCapCharacters字母大小、textCapWords單詞首字母大小、textCapSentences僅第一個字母大小、textAutoCorrect、textAutoComplete自動完成、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:width 支持 
px (pixels)像素
dip (device independent pixels)設備獨立像素
sp (scaled pixels — best for text size)放大像素--對文本大小最好
pt (points)點
in (inches)英寸
mm (millimeters)毫米

 

android:maxWidth

設置文本區域的最大寬度

android:minWidth

設置文本區域的最小寬度

     補充說明:

      a).  由於是繼承自TextView,所以屬性是一樣的,但是這裡重點補充了輸入法相關的屬性說明和研究,部分注釋也做了相應的調整。

      b).  Word格式下載

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

 

  三、例子

    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;
            }
        });


轉自:http://www.cnblogs.com/over140/archive/2010/09/02/1815439.html

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved