Android之UI学习篇一:TextVeiw如何显示丰富的文本
2013-02-16 23:13
567 查看
相信大家必定都知道TextView主要是在android中实现文字说明等功能,那么TextView能否显示更加丰富的文本,如URL、字体大小、颜色这些,答案是肯定的!
那么究竟如何来让我们的TextView显示的内容更加丰富多彩呢,这一篇来跟大家一起探讨一下:
首先呢,大家要知道的是,我们网页里能够显示多样性的文字,都归功与HMTL标签对吧,其实在Android的TextView中也预定了一些类似HTML的标签,通过标签可以使TextView控件显示不同颜色、大小、字体的文字:
<font>:设置颜色和字体
<big>:设置大号
<small>:设置小号
<i>\<b>:分别是斜体和粗体
<a>:链接地址
<img>:插入图片
使用这些标签可以用Html.fromHtml方法将这些标签的字符串转换成Charsequence对象,然后再TextView中进行设置;
如果想在显示的文本中将URL地址、邮箱地址、电话产生超链接的效果,可以使用android:autoLink来设置,该属性的规则如下:
属性值 描述
None 不匹配任何链接(默认)
web 网址
email 邮箱
phone 电话号码
map 匹配映射网址
all 匹配所有链接
下面通过一个实例来讲解一下如何灵活使用这些标签:
实现的丰富文字TextView截图:
点击"百度"文字链接之后,打开了浏览器并跳转到了百度网址,截图如下:
点击电话号码"+86148998943"之后弹出了拨打电话的界面,截图:
代码如下:
TextViewActivity.java
main.xml
那么究竟如何来让我们的TextView显示的内容更加丰富多彩呢,这一篇来跟大家一起探讨一下:
首先呢,大家要知道的是,我们网页里能够显示多样性的文字,都归功与HMTL标签对吧,其实在Android的TextView中也预定了一些类似HTML的标签,通过标签可以使TextView控件显示不同颜色、大小、字体的文字:
<font>:设置颜色和字体
<big>:设置大号
<small>:设置小号
<i>\<b>:分别是斜体和粗体
<a>:链接地址
<img>:插入图片
使用这些标签可以用Html.fromHtml方法将这些标签的字符串转换成Charsequence对象,然后再TextView中进行设置;
如果想在显示的文本中将URL地址、邮箱地址、电话产生超链接的效果,可以使用android:autoLink来设置,该属性的规则如下:
属性值 描述
None 不匹配任何链接(默认)
web 网址
email 邮箱
phone 电话号码
map 匹配映射网址
all 匹配所有链接
下面通过一个实例来讲解一下如何灵活使用这些标签:
实现的丰富文字TextView截图:
点击"百度"文字链接之后,打开了浏览器并跳转到了百度网址,截图如下:
点击电话号码"+86148998943"之后弹出了拨打电话的界面,截图:
代码如下:
TextViewActivity.java
public class Android_TextviewActivity extends Activity { private TextView textView1; private TextView textView2; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); /* * 实现在TextView中显示URL、不同大小、字体、颜色的文本 * */ textView1=(TextView)findViewById(R.id.textview1); textView2=(TextView)findViewById(R.id.textview2); //添加一段html的标示 String html="<font color='red'>I love Android</font><br>"; html+="<font color='#00ff00'><big><i> I love Android </i></big></font><p>"; html+="<big><a href='http://www.baidu.com'>百度</a></big>"; CharSequence charSequence=Html.fromHtml(html); textView1.setText(charSequence); //点击的时候产生超链接 textView1.setMovementMethod(LinkMovementMethod.getInstance()); String text="我的URL:http://www.sina.com\n"; //这里的\n是换行符 text+="我的Email:mrwujay@163.com\n"; text+="我的电话:+86148998933"; textView2.setText(text); textView2.setMovementMethod(LinkMovementMethod.getInstance()); } }
main.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:id="@+id/textview1" android:padding="20sp"/> <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:id="@+id/textview2" android:padding="20sp" android:autoLink="all" android:textSize="20sp" android:text="@string/link_text"/> </LinearLayout>
相关文章推荐
- 第一集UI:TextView如何显示丰富的文本
- Android UI如何让TextView中的文字居中显示
- TextView如何显示丰富的文本
- Android UI 如何让TextView中的文字居中显示
- Android UI 如何让TextView中的文字居中显示
- Android之UI学习篇二:TextVeiw显示表情和跑马灯效果
- android中textview设置为多行文本时,如何让文字从最顶开始显示
- android中textview设置为多行文本时,如何让文字从最顶开始显示
- android TextView多行文本始终显示滚动条并自动定位到底部
- 【Android】自定义控件让TextView的drawableLeft与文本一起居中显示
- Android中Textview显示带html文本三-------【Textview显示网络图片】
- android 的textview显示过长文本时用一个按钮控制展开与收缩
- 我的Android进阶之旅------> Android为TextView组件中显示的文本添加背景色
- Android中Textview显示带html文本二-------【Textview显示本地图片】
- Android中Textview显示带html文本一-------【HTML标签】
- Android中Textview显示带html文本三-------【Textview显示网络图片】
- android---textview控件学习笔记之显示表情图片和文本(二)
- Android中Textview显示带html文本二-------【Textview显示本地图片】
- Android UI设计之<六>使用HTML标签,实现在TextView中对部分文字进行加粗显示