/**
* TextView实现文字链接跳转功能
* @description:
* @author ldm
* @date 2016-4-21 下午4:34:05
*/
publicclassTextViewLinkActextendsActivity {
privateTextView tv_3;
privateTextView tv_4;
@Override
protectedvoidonCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.link);
setTextViewLink();
}
/**
* 通过不同方式实现TextView中文字点击链接跳转功能
*
* @description:
* @author ldm
* @date 2016-4-21 下午4:24:13
*/
privatevoidsetTextViewLink() {
// 以Html格式href链接方式实现跳转
tv_3 = (TextView) findViewById(R.id.text3);
tv_3.setText(Html
.fromHtml("text3: Constructed from HTML programmatically. Text with a "
+" "
+"created in the Java source code using HTML."));
tv_3.setMovementMethod(LinkMovementMethod.getInstance());
// 通过SpannableString的setMovementMethod方法实现链接效果
SpannableString ss =newSpannableString(
"text4: Manually created spans. Click here to dial the phone.");
ss.setSpan(newStyleSpan(Typeface.BOLD),0,30,
Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
ss.setSpan(newURLSpan("tel:4155551212"),31+6,31+10,
Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
tv_4 = (TextView) findViewById(R.id.text4);
tv_4.setText(ss);
tv_4.setMovementMethod(LinkMovementMethod.getInstance());
}
}
布局文件
其中通过在而已代码中android:autoLink属性的选项目有:none(无链接效果),web(网页链接),email(发邮件),phone(打电话),map(定位)及all(默认全都自动链接)。