Textview設定文字樣式和顏色

2021-07-30 21:46:11 字數 2943 閱讀 9303

1.    自定義字型

可以使用settypeface(typeface)方法來設定文字框內文字的字型,而android的typeface又使用ttf字型檔案來設定字型

所以,我們可以在程式中放入ttf字型檔案,在程式中使用typeface來設定字型:第一步,在assets目錄下新建fonts目錄,把ttf字型檔案放到這裡。第二步,程式中呼叫:

textviewtv = (textview)findviewbyid(r.id.textview);

assetmanagermgr=getassets();//得到assetmanager

typefacetf=typeface.createfromasset(mgr, "fonts/mini.ttf");//根據路徑得到typeface

tv.settypeface(tf);//設定字型

效果如下圖所示:

2.    顯示多種顏色的字

android支援html格式的字串,通過呼叫html.fromhtml(str)方法可以轉換html格式的字串str。

示例如下:

stringtextstr1 = "如果有一天,

";stringtextstr2 = "我厭倦了這裡,

";stringtextstr3 = "我會乘著夢,

";stringtextstr4 = "飛向那個屬於自己的

世界……

";tv.settext(html.fromhtml(textstr1+textstr2+textstr3+textstr4));

執行後效果如下:

3.    字型加粗

在xml布局檔案中使用android:textstyle=」bold」可以將英文設定成粗體,但是不能將中文設定成粗體,將中文設定成粗體的方法是:使用textpaint的仿「粗體」設定setfakeboldtext為true。示例**如下:

tv.getpaint().setfakeboldtext(true);

效果如下:

4.    新增陰影

在xml布局檔案中使用一系列android:shadow***屬性可新增設定陰影。具體為:shadowcolor設定陰影顏色;shadowdx設定陰影水平偏移量;shadowdy設定陰影垂直偏移量;shadowradius設定陰影半徑。

示例**:

android:shadowcolor="#ffffff"

android:shadowdx="15.0"

android:shadowdy="5.0"

android:shadowradius="2.5"

顯示效果如下:

5.    插入

插入有兩種方法,第一種方法就是用上面說的html格式的字串,不過轉換稍微有些麻煩。需要用到imagegetter類來對的src屬性進行轉換。示例**如下:

stringimgstr = "

html.imagegetterimagegetter = new html.imagegetter()

};第二種方法是使用xml布局檔案中一系列android:drawable***屬性來實現插入。具體為:drawablebottom是在文字框內文字的底端繪製指定影象;drawableleft是在文字框內文字的左邊繪製指定影象;drawableright是在文字框內文字的右邊繪製指定影象;drawabletop是在文字框內文字的頂端繪製指定影象;drawablepadding設定文字框內文字與影象之間的間距。示例**:

android:drawablebottom=」@drawable/sidai」

插入後的顯示效果如下:

用spannablestring來實現。

spannablestring spannablestring = new spannablestring(

"預設顏色紅顏色");

spannablestring

.setspan

(new foregroundcolorspan(color

.parsecolor

("#ff0000"

)),

4,spannablestring

.length

(), spanned

.span

_exclusive_exclusive);tv

.settext

(spannablestring);

其中,」預設顏色紅顏色」 為你要改變的文字。setspan方法有四個引數,foregroundcolorspan是為文字設定前景色,也就是文字顏色。如果要為文字新增背景顏色,可替換為backgroundcolorspan。4為文字顏色改變的起始位置,spannablestring.length()為文字顏色改變的結束位置。最後乙個引數為布林型,可以傳入以下四種。 

spanned.span_inclusive_exclusive 從起始下標到終了下標,包括起始下標 

spanned.span_inclusive_inclusive 從起始下標到終了下標,同時包括起始下標和終了下標 

spanned.span_exclusive_exclusive 從起始下標到終了下標,但都不包括起始下標和終了下標 

spanned.span_exclusive_inclusive 從起始下標到終了下標,包括終了下標

TextView設定字型樣式

packagecom.zhou.activity import importandroid.graphics.color importandroid.os.bundle importandroid.text.spannable importandroid.text.spannablestring i...

android中設定textview文字樣式

自定義字型的話,android typeface使用ttf字型檔案設定字型 你可以在程式中放入ttf字型檔案,在程式中使用typeface設定字型。第一步,在assets目錄下新建fonts目錄,把ttf字型檔案放到這。第二步,程式中呼叫 assetmanager mgr getassets 得到a...

TextView設定個別字型樣式

隨筆 139 文章 1 1 spannablestring msp new spannablestring 測試 xm 更換當前號碼將從手機傳送一條普通簡訊進行驗證 2 msp.setspan new foregroundcolorspan color.blue 2,xm.length 2,span...