| 注册
请输入搜索内容

热门搜索

Java Linux MySQL PHP JavaScript Hibernate jQuery Nginx
nisf7805
7年前发布

为你的Android TextView添加Html标签属性

   <p>最近遇到了一个需要将一串字符串分段以不同的字体、颜色、大小显示到View中的问题,本来很简单,我们在布局多开几个TextView分别设置格式就行了,但同事说有其他更简洁的办法。一查资料还真发现TextView竟然支持Html标签!</p>    <p>通过 Html 类将我们的标签字符转换一下,然后直接设置给View就可以达到分段变换格式的目的了。下面简单罗列三种比较常见的用法:</p>    <ul>     <li> <p>1.变换字体大小和颜色</p> </li>    </ul>    <pre>  <code class="language-java">String pre = "pm";          String time = "18:00";          mText.setText(Html.fromHtml("<b><small><font color=#ff0000>" + pre + "</b><small/><font/>" +                  "<big>" + time + "</big>"));</code></pre>    <ul>     <li> <p>效果图</p> <p><img src="https://simg.open-open.com/show/574af3fea5c6dc3cc037767910007b5b.png"></p> </li>     <li> <p>2.换行、斜体</p> <pre>  <code class="language-java">String skew = "the same textview";        mText.setText(Html.fromHtml(skew+"<br />"+"<i>"+skew));</code></pre> </li>     <li> <p>效果图</p> <p><img src="https://simg.open-open.com/show/3b1aa5895654a49659d512e6eb759423.png"></p> </li>    </ul>    <ul>     <li> <p>3.超链接(其实在布局中通过android:autoLink属性设置最简单)</p> </li>    </ul>    <pre>  <code class="language-java">String baidu="百度";          mText.setText(Html.fromHtml("<a href=\"http://www.baidu.com\">"+baidu));          mText.setMovementMethod(LinkMovementMethod.getInstance());</code></pre>    <p>如果没通过 setMovementMethod 方法为该链接添加响应,是不会生效的哦~</p>    <ul>     <li> <p>效果图</p> <p><img src="https://simg.open-open.com/show/6bb8ced281153b12dc4c7ea4f2cd1cac.png"></p> </li>    </ul>    <h3> </h3>    <p> </p>    <p>来自:http://www.jianshu.com/p/f21866698bd8</p>    <p> </p>    
 本文由用户 nisf7805 自行上传分享,仅供网友学习交流。所有权归原作者,若您的权利被侵害,请联系管理员。
 转载本站原创文章,请注明出处,并保留原始链接、图片水印。
 本站是一个以用户分享为主的开源技术平台,欢迎各类分享!
 本文地址:https://www.open-open.com/lib/view/open1478483767386.html
HTML TextView Android开发 移动开发