怎样让TextView 中显示多种风格

如果希望普通TextView 中的文本显示不同的风格,有的加粗,有的是链接,则有以下2种方法:


方法一:采用Html.fromHtml方法

 

mBox = new TextView(context);
mBox.setText(Html.fromHtml("<b>" + title + "</b>" +  "<br />" + 
            "<small>" + description + "</small>" + "<br />" + 
            "<small>" + DateAdded + "</small>"));

目前支持的html标签名册:

<a href="..."> <!-- 表示一个链接 -->
<b> <!-- 加粗 -->
<big> <!-- 放大字体-->
<blockquote> <!-- 标签定义块引用-->
<br> <!-- 换行 -->
<cite> <!-- 标签来定义作品的标题-->
<dfn> <!--标签可标记那些对特殊术语或短语的定义 -->
<div align="..."> <!--标签可以把文档分割为独立的、不同的部分 -->
<em> <!--把文本定义为强调的内容。 -->
<font  color="..." face="..."> <!-- <font> 规定文本的字体、字体颜色。 注意:字体大小是不支持的-->
<h1>
<h2>
<h3>
<h4>
<h5>
<h6>
<!-- 标签可定义标题。<h1> 定义最大的标题。<h6> 定义最小的标题。 -->
<i> <!-- 标签呈现斜体的文本 -->
<img src="..."> <!-- 表示插入图片 -->
<p> <!-- 表示一个段落 -->
<small> <!--标签呈现小号字体效果。-->
<strike> <!-- 标签可定义加删除线文本定义。 -->
<strong> <!-- 强调文本 -->
<sub> <!--标签可定义下标文本。 -->
<sup> <!--标签可定义上标文本。 -->
<tt>  <!-- 标签呈现类似打字机或者等宽的文本效果-->
<u>   <!-- 标签可定义下划线文本。 -->
参考google论坛: http://code.google.com/p/android/issues/detail?id=8640


方法二:采用android的配置style

 


Textview tv = (TextView)findViewById(R.id.textview);
SpannableString text = new SpannableString(myString);

text.setSpan(new TextAppearanceSpan(getContext(), R.style.style1),0,1, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); //用style1的风格
text.setSpan(new TextAppearanceSpan(getContext(), R.style.style2),2,3, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); //用style2的风格

tv.setText(text, TextView.BufferType.SPANNABLE);


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值