安卓TextView控件,給文本加空格用轉(zhuǎn)義符和設(shè)置文本樣式SpannableString

都是在TextView控件使用的小知識(shí)點(diǎn),在開發(fā)中經(jīng)常用到,我就寫在一起了。

***在布局的xml文件里使用以下轉(zhuǎn)義有效:

 (一個(gè)漢字寬度)

 (半個(gè)漢字寬度)

 (比一個(gè)漢字寬度寬一點(diǎn))

…(省略號(hào))

\u3000(一個(gè)漢字寬度)

\u0020(半個(gè)漢字寬度)

\n(換行)

直接在布局xml里使用

***在strings.xml 結(jié)合 String.format() 使用以下轉(zhuǎn)義有效:

\u3000(一個(gè)漢字寬度)

\u0020(半個(gè)漢字寬度)

strings.xml 結(jié)合 String.format( )

***SpannableString 能夠更簡便的設(shè)置文字樣式

方法:setSpan (Object what, int start, int end, int flags)

參數(shù)說明:

Object what:對(duì)應(yīng)各種Span樣式; ForegroundColorSpan字體顏色? BackgroundColorSpan背景顏色? AbsoluteSizeSpan(25)字體大小? StyleSpan(Typeface.BOLD_ITALIC)字體樣式 粗斜體等等。

int start:字符樣式開始變化的位置,索引從0開始;

int end:字符樣式變化結(jié)束的位置,這個(gè)位置樣式不會(huì)變化。比如取值3,那么索引3對(duì)應(yīng)的字符不會(huì)有樣式變化;

int flags: 有四種值

Spannable.SPAN_EXCLUSIVE_EXCLUSIVE:前后都不包括,即在指定范圍的前面和后面插入的字符都不會(huì)應(yīng)用新樣式?

Spannable.SPAN_EXCLUSIVE_INCLUSIVE:前面不包括,后面包括。即僅在范圍字符的后面插入新字符時(shí)會(huì)應(yīng)用新樣式

Spannable.SPAN_INCLUSIVE_EXCLUSIVE:前面包括,后面不包括

Spannable.SPAN_INCLUSIVE_INCLUSIVE:前后都包括

下面只舉例改變部分文字樣式

修改字體的顏色
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容