Android控件之TextView全解析

前言

你們好!在前幾篇文章裏,咱們詳細介紹了Android中的經常使用佈局,使你們對Android中的頁面佈局有了必定認識,而對於佈局中使用的一些UI控件如ButtonTextView等,有的讀者可能還存在一些困惑。在接下來文章中,咱們將詳細介紹Android開發中常常使用的UI控件,敬請期待!php

簡介

TextView(文本框),是Android中用於顯示文本的一個控件。android

經常使用屬性詳解

  • id:爲TextView設置一個組件id,根據id,咱們能夠在Java代碼中經過findViewById()的方法獲取到該對象,而後進行相關屬性的設置。
  • layout_width:控件的寬度,能夠寫成wrap_contentmatch_parent,前者是寬度自適應(控件中顯示的內容多大,控件就多大),然後者寬度會填滿該控件所在的父容器;也能夠設置成特定的大小,如上200dp。
  • layout_height:組件的寬度,內容同上。
  • gravity:設置控件中內容的位置,如上center表示居中。
  • text:設置顯示的文本內容,通常咱們是把字符串寫到string.xml文件中,而後經過@String/xxx取得對應的字符串內容的,可避免圖上黃色警告。
  • textColor:設置字體顏色,同上,也需經過colors.xml資源來引用。
  • textStyle:設置字體風格,三個可選值:normal(無效果),bold(加粗),italic(斜體)。
  • textSize:字體大小,單位用sp
  • backgroud:控件的背景顏色,填充整個控件,也能夠是圖片或者drawable資源文件。

實際開發示例

1.帶圖片的TextView

  • drawableXxx:能夠設置四個方向的圖片:drawableTop(上),drawableButtom(下),drawableStart(左),drawableEnd(右) 另外,你也可使用drawablePadding來設置圖片與文字間的間距。

2.帶陰影的TextView

  • shadowColor:設置陰影顏色,須要與shadowRadius一塊兒使用。
  • shadowRadius:設置陰影的模糊程度。
  • shadowDx:設置陰影在水平方向的偏移,即水平方向陰影開始的橫座標位置。
  • shadowDy:設置陰影在豎直方向的偏移,即豎直方向陰影開始的縱座標位置。

3.帶邊框的TextView

  • background="@drawable/bg_text":編寫一個ShapeDrawable的資源文件,放在res下的drawable目錄下。
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
    <!--填充色-->
    <solid android:color="#03A9F4" />
    <!--描邊及描邊尺寸-->
    <stroke android:width="8dp" android:color="#FF5722" />
    <!--圓角尺寸,四個角相同可直接使用android:radius-->
    <corners android:bottomLeftRadius="12dp" android:bottomRightRadius="12dp" android:topLeftRadius="8dp" android:topRightRadius="8dp" />
</shape>
複製代碼

屬性大全

上面只是簡單介紹了TextView中一些經常使用的使用方法,在TextView中,其屬性還有不少。下面詳細列舉TextViewXML中各類屬性,供你們參考查閱git

android:text:設置顯示文本內容。web

android:textColor:設置文本顏色。api

android:textSize:設置文字字體大小,單位sp佈局

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

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

android:textStyle:設置字體風格,三個可選值:normal(無效果),bold(加粗),italic(斜體)。spa

android:typeface:設置文本字體,必須是如下常量值之一:normal 0、 sans 一、 serif 二、 monospace(等寬字體) 3。code

android:maxWidth:置文本區域的最大寬度。

android:minWidth:設置文本區域的最小寬度。

android:maxHeight:設置文本區域的最大高度。

android:minHeight:設置文本區域的最小高度。

android:textScaleX:設置文字之間間隔,默認爲1.0f。

android:autoLink:設置是否當文本爲URL連接/email/電話號碼/map時,文本顯示爲可點擊的連接。可選值(none/web/email/phone/map/all)。

android:autoText: 若是設置,將自動執行輸入值的拼寫糾正,在顯示輸入法並輸入的時候起做用。

android:capitalize:設置英文字母大寫類型,須要彈出輸入法才能看獲得。

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

android:drawableXxx:在text的Xxx方向輸出一個drawable,如圖片。

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

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

android:freezesText:設置保存文本的內容以及光標的位置。

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

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

android:inputMethod:爲文本指定輸入法,須要徹底限定名(完整的包名)。

android:inputType:設置文本的類型,用於幫助輸入法顯示合適的鍵盤類型。

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

android:ems:設置TextView的寬度爲N個字符的寬度。

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

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

android:maxLength:限制顯示的文本長度,超出部分不顯示。

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

android:singleLine:設置單行顯示。若是和layout_width一塊兒使用,當文本不能所有顯示時,後面用「…」來表示。

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

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

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

android:lineSpacingExtra:設置行間距。

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

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

android:shadowColor:指定文本陰影的顏色,須要與shadowRadius一塊兒使用。

android:shadowRadius:設置陰影的半徑,過小了無效果。

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

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

結語

以上就是Android中最經常使用的UI控件TextView的介紹,開發示例中只列舉了幾種最經常使用的使用方式。在接下來的幾篇文章中,還會有其餘更加精彩的AndroidUI控件的介紹,敬請期待!

PS:若是還有未看懂的小夥伴,歡迎加入咱們的QQ技術交流羣:892271582,裏面有各類大神回答小夥伴們遇到的問題哦~

img
相關文章
相關標籤/搜索