Android之UI学习篇一:TextVeiw如何显示丰富的文本
16lz
2022-04-24
那么究竟如何来让我们的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
publicclassAndroid_TextviewActivityextendsActivity{privateTextViewtextView1;privateTextViewtextView2;@OverridepublicvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.main);/**实现在TextView中显示URL、不同大小、字体、颜色的文本**/textView1=(TextView)findViewById(R.id.textview1);textView2=(TextView)findViewById(R.id.textview2);//添加一段html的标示Stringhtml="<fontcolor='red'>IloveAndroid</font><br>";html+="<fontcolor='#00ff00'><big><i>IloveAndroid</i></big></font><p>";html+="<big><ahref='http://www.baidu.com'>百度</a></big>";CharSequencecharSequence=Html.fromHtml(html);textView1.setText(charSequence);//点击的时候产生超链接textView1.setMovementMethod(LinkMovementMethod.getInstance());Stringtext="我的URL:http://www.sina.com\n";//这里的\n是换行符text+="我的Email:mrwujay@163.com\n";text+="我的电话:+86148998933";textView2.setText(text);textView2.setMovementMethod(LinkMovementMethod.getInstance());}}
main.xml
<LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="fill_parent"android:layout_height="fill_parent"android:orientation="vertical"><TextViewandroid:layout_width="fill_parent"android:layout_height="wrap_content"android:id="@+id/textview1"android:padding="20sp"/><TextViewandroid: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>
更多相关文章
- Android(安卓)中设置桌面背景
- android:windowIsTranslucent
- android 创建快捷方式图标到桌面
- Android(安卓)动态设置控件高度
- android中的滚动条ScrollView
- Android运行时动态全屏以及旋转屏幕时不重新装载
- android中TextView中如何设置水平滚动效果
- Android(安卓)studio百度地图SDK开发 2020最新超详细的Android(
- android中的布局 (一)TextView 的属性介绍