本文实例讲述了Android开发实现TextView显示丰富的文本的方法。分享给大家供大家参考,具体如下:
如图,显示html的元素控件,点击连接实现上网,发email,拨号

实现源码如下:
MainActivity.java
package com.example.textview2;import android.os.Bundle;import android.app.Activity;import android.text.Html;import android.text.method.LinkMovementMethod;import android.view.Menu;import android.widget.TextView;public class MainActivity extends Activity {private TextView textView1, textView2;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);textView1 = (TextView) this.findViewById(R.id.textview1);textView2 = (TextView) this.findViewById(R.id.textview2);// 添加一段html的标志String html = "<font color="red"></font><br><br><br>";html += "<font color="#0000ff"><big><i></i></big></font><p>";html += "<big><a href="http://www.baidu.com">百度</a></big><br>";CharSequence charSequence = Html.fromHtml(html);textView1.setText(charSequence);textView1.setMovementMethod(LinkMovementMethod.getInstance());// 点击的时候产生超链接String text = "我的URL:http://www.sina.com
";text += "我的email:abcd@126.com
";text += "我的电话:+ 86 010-89487389";textView2.setText(text);textView2.setMovementMethod(LinkMovementMethod.getInstance());}@Overridepublic boolean onCreateOptionsMenu(Menu menu) {// Inflate the menu; this adds items to the action bar if it is present.getMenuInflater().inflate(R.menu.main, menu);return true;}}
strings.xml
<?xml version="1.0" encoding="utf-8"?><resources><string name="action_settings">Settings</string><string name="hello_world">Hello world!</string><string name="app_name">如何显示html的元素控件</string><color name="green">#00FF00</color><string name="link_text"><a href="tel:13693207964">打电话</a></string></resources>
activity_main.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"android:paddingBottom="@dimen/activity_vertical_margin"android:paddingLeft="@dimen/activity_horizontal_margin"android:paddingRight="@dimen/activity_horizontal_margin"android:paddingTop="@dimen/activity_vertical_margin"tools:context=".MainActivity" ><TextView android:layout_width="fill_parent"android:layout_height="wrap_content" android:id="@+id/textview1"android:padding="20sp" /><TextViewandroid:id="@+id/textview2"android:layout_width="fill_parent"android:layout_height="wrap_content"android:autoLink="all"android:padding="20sp"android:text="@string/link_text"android:textSize="20sp" /></RelativeLayout>
希望本文所述对大家Android程序设计有所帮助。