UI组件TextView
属性:android:autoLink
我们用一个实例来解释这个属性
首先在strings.xml里写出我们需要的字符串
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">TextViewTest</string>
<string name="webUrl">百度:http://baidu.com</string>
<string name="email">我的:296463139@qq.com</string>
<string name="phoneNumber">电话号码:10086</string>
<string name="autoSAll">百度:http://baidu.com 我的:296463139@qq.com</string>
</resources>
然后在我们的main.xml里声明属性
<?xml version="1.0" encoding="utf-8"?>
<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:autoLink="web"
android:text="@string/webUrl" />
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:autoLink="email"
android:text="@string/email" />
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:autoLink="phone"
android:text="@string/phoneNumber" />
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:autoLink="all"
android:text="@string/autoSAll" />
<TextView
android:id="@+id/tvId"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
</LinearLayout>
/Activity
package cn.class3g.activity;
import android.app.Activity;
import android.os.Bundle;
import android.text.Html;
import android.widget.TextView;
public class TextViewTestActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
TextView tv = (TextView) this.findViewById(R.id.tvId);
String htmlStr = "<font size='30' color='#00FF22'>我</font>爱<b>你</b>"
+ "<a href='baidu.com'>百度</a>";
tv.setText(Html.fromHtml(htmlStr));
}
}
注意:
android:autoLink=”email” :会出现unsupported action,可能是模拟器bug,须探究
另外使用Html.fromHtml时,超链接只具备外观,不能跳转
效果图: