Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> 布局與控件(三)-TextView那些事兒

布局與控件(三)-TextView那些事兒

編輯:關於Android編程

第3節 TextView

這是界面設計最為常用的控件,也是很多別的控件的父類,例如Button

\

3.1 文字常用屬性

最常使用到的屬性,通過它們的名字就可以判斷出它們的作用:

android:text:為TextView設置顯示的文字內容;


    android:text="Hello world!"/>


    android:text="@string/hello_world"/>
\

android:textColor:設置文字的顏色;


    android:textColor="#FFFF0000"/>


    android:text="@color/color_red"/>
\

android:textSize:設置文字的大小,文字大小最好使用sp為單位;


    android:textSize="12sp"/>


    android:textSize="@dimen/text_size"/>
\

android:textAllCaps:顯示的字符都是大寫,


    android:textAllCaps="true"/>
\

3.2 文字字體

android:textStyle:設置文字的樣式,粗體bold、斜體italic等等,默認情況下是normal


    android:textStyle="bold"/>
\

android:fontFamily:設置文字顯示用的的特定字體家族,可用的字體家族可以參考安卓系統源碼的system_fonts.xml文件,裡面fileset標簽中的名字,就可以用作android:fontFamily的參數,


    android:fontFamily="sans-serif-light"/>
\

android:typeface:設置文字的字型,有normal sans serif monospace四種字型設置;它會與font family對應的字體家族合作,查找合適的字體用來顯示文字;


    android:typeface="monospace"/>
\

如果你使用了fontFamily,那麼系統會優先從該fontFamily中,結合typefacetextStyle查找合適的字體;假如沒有找到,就會在默認的fontFamily中,結合typefacetextStyle查找合適的字體。

3.3 文字空間利用

android:singleLine:即使文字內容很長,也不要換行顯示;


    android:singleLine="true"/>
\

android:lines:如果文字內容很長,會換行顯示,並且顯示行數為設置的行數;如果你的文字沒有設定的行數(例如10行)那麼多,那麼整個TextView也會占據10行文字的高度;


    android:lines="10"/>
\

android:maxLines:如果文字內容很長,會換行顯示,但是行數不能超過設置的行數;如果你的文字沒有設定的行數那麼長,那麼整個TextView的高度也就是文字實際占用的高度;


    android:maxLines="2"/>
\

android:maxLength:指定要顯示的字符數量,一個中文漢字也認為是一個字符;


    android:maxLength="4"/>

android:ellipsize:如果文字內容很長,可以通過這個屬性設定它的顯示效果,

end:顯示文字內容的前面部分,後面顯示不下的內容用...表示;


    android:ellipsize="end"
    
    android:singleLine="true"/>
\

start:顯示文字內容的後面部分,前面顯示不下的內容用...表示;還有其它的條件需要滿足:文字必須只有一行;


    android:ellipsize="start"
    
    android:singleLine="true"/>
\

middle:顯示文字的中間部分:兩頭顯示不下的內容用...表示;還有其它的條件需要滿足:文字必須只有一行;


    android:ellipsize="middle"
    
    android:singleLine="true"/>
\

marquee:以走馬燈的方式(文字從右到左滾動)顯示;不過要顯示這個效果,還有其它的條件需要滿足:文字必須只有一行,TextView可以獲取焦點,並處於被選中的狀態;


    android:ellipsize="marquee"
    
    android:singleLine="true"
    
    android:focusableInTouchMode="true"
    android:focusable="true" />
\

3.4 文字顯示效果

android:textAppearance用來指定TextView顯示文字時的風格-style。這種style的定義如下,設置了字體的大小、顏色等屬性

使用的時候,可以使用上面那種自己定義的style,

也可以使用系統預設好的style,
android:textAppearance="?android:attr/textAppearanceSmall
android:textAppearance="?android:attr/textAppearanceMedium
android:textAppearance="?android:attr/textAppearanceLarge
android:textAppearance="?android:attr/textAppearanceLarge等等,是最經常使用的系統提供的style,

文字陰影
給文字添加陰影效果需要使用android:shadowRadius android:shadowDy android:shadowDx屬性。

\

3.5 文字內容修飾

android:autoLink:如果文字中包含了特定格式的字符串,那麼會高亮這個字符串,並且讓用戶可以點擊進行進一步的操作;這個屬性有none web email phone map all等多個值選用,


    android:autoLink="all"/>

3.6 配圖的使用

android:drawableTop android:drawableBottom android:drawableLeft android:drawableRight屬性可以在文字的上下左右位置設置一個Drawable(例如圖片)。


    android:drawableTop="@mipmap/icon"
    android:text="圖庫"/>
\
  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved