Android开发(15)-TextView显示丰富的文本

如图,显示html的元素控件,点击连接实现上网,发email,拨号

实现源码如下:

MainActivity.java

[java] view plain copy
  1. package com.example.textview2;  
  2. import android.os.Bundle;  
  3. import android.app.Activity;  
  4. import android.text.Html;  
  5. import android.text.method.LinkMovementMethod;  
  6. import android.view.Menu;  
  7. import android.widget.TextView;  
  8.   
  9. public class MainActivity extends Activity {  
  10.     private TextView textView1, textView2;  
  11.     @Override  
  12.     protected void onCreate(Bundle savedInstanceState) {  
  13.         super.onCreate(savedInstanceState);  
  14.         setContentView(R.layout.activity_main);  
  15.         textView1 = (TextView) this.findViewById(R.id.textview1);  
  16.         textView2 = (TextView) this.findViewById(R.id.textview2);  
  17.         // 添加一段html的标志  
  18.         String html = "


    "
    ;  
  19.         html += "

    ";  

  20.         html += "百度
    "
    ;  
  21.         CharSequence charSequence = Html.fromHtml(html);  
  22.         textView1.setText(charSequence);  
  23.         textView1.setMovementMethod(LinkMovementMethod.getInstance());// 点击的时候产生超链接  
  24.   
  25.         String text = "我的URL:http://www.sina.com\n";  
  26.         text += "我的email:[email protected]\n";  
  27.         text += "我的电话:+ 86 010-89487389";  
  28.         textView2.setText(text);  
  29.         textView2.setMovementMethod(LinkMovementMethod.getInstance());  
  30.     }  
  31.   
  32.     @Override  
  33.     public boolean onCreateOptionsMenu(Menu menu) {  
  34.         // Inflate the menu; this adds items to the action bar if it is present.  
  35.         getMenuInflater().inflate(R.menu.main, menu);  
  36.         return true;  
  37.     }  
  38.   
  39. }  


strings.xml

[html] view plain copy
  1. xml version="1.0" encoding="utf-8"?>  
  2. <resources>  
  3.   
  4.       
  5.     <string name="action_settings">Settingsstring>  
  6.     <string name="hello_world">Hello world!string>  
  7.     <string name="app_name">如何显示html的元素控件string>  
  8.     <color name="green">#00FF00color>  
  9.     <string name="link_text"><a href="tel:13693207964">打电话a>string>  
  10. resources>  

 

activity_main.xml

[html] view plain copy
  1. <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"  
  2.     xmlns:tools="http://schemas.android.com/tools"  
  3.     android:layout_width="match_parent"  
  4.     android:layout_height="match_parent"  
  5.     android:paddingBottom="@dimen/activity_vertical_margin"  
  6.     android:paddingLeft="@dimen/activity_horizontal_margin"  
  7.     android:paddingRight="@dimen/activity_horizontal_margin"  
  8.     android:paddingTop="@dimen/activity_vertical_margin"  
  9.     tools:context=".MainActivity" >  
  10.   
  11.    <TextView android:layout_width="fill_parent"  
  12.         android:layout_height="wrap_content" android:id="@+id/textview1"  
  13.         android:padding="20sp" />  
  14.   
  15.     <TextView  
  16.         android:id="@+id/textview2"  
  17.         android:layout_width="fill_parent"  
  18.         android:layout_height="wrap_content"  
  19.         android:autoLink="all"  
  20.         android:padding="20sp"  
  21.         android:text="@string/link_text"  
  22.         android:textSize="20sp" />  
  23.   
  24. RelativeLayout>

你可能感兴趣的:(Android)