服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - Android - Android实现捕获TextView超链接的方法

Android实现捕获TextView超链接的方法

2021-04-06 14:17非著名程序员 Android

这篇文章主要介绍了Android实现捕获TextView超链接的方法,涉及Android查找TextView中超链接的相关实现技巧,具有一定参考借鉴价值,需要的朋友可以参考下

本文实例讲述了android实现捕获textview超链接的方法。分享给大家供大家参考,具体如下:

这里分享一篇捕获textview超链接的文章,希望对大家有所帮助,我终于在歪路上回归正途了。这个捕获textview超链接应该算是比较常用吧,如果你会了,就不用看了,如果还不会,可以看一眼,非常简单。

捕获textview超链接这个意思就是在一段文字当中如果有超链接的网址在当中,在textview中会特别显示,和其它文字颜色不一样,还可以点击执行相应的操作。

效果图如下:

Android实现捕获TextView超链接的方法

具体代码如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
tv = (textview) findviewbyid(r.id.tv);
string html = "「非著名程序员」可能是东半球最好的技术分享公众号。每天,每周定时推送一些有关移动开发的原创文章和教程。 不信你可以\n";
html += "<a href='http://www.baidu.com'>百度一下</a> 哈哈,有意思吧!记住微信号是:smart_android 哦";
charsequence charsequence = html.fromhtml(html);
spannablestringbuilder builder = new spannablestringbuilder(
charsequence);
urlspan[] urlspans = builder.getspans(0, charsequence.length(),
urlspan.class);
for (urlspan span : urlspans) {
int start = builder.getspanstart(span);
int end = builder.getspanend(span);
int flag = builder.getspanflags(span);
final string link = span.geturl();
builder.setspan(new clickablespan() {
@override
public void onclick(view widget) {
// 捕获<a>标签点击事件,及对应超链接link
}
}, start, end, flag);
builder.removespan(span);
}
tv.setlinksclickable(true);
tv.setmovementmethod(linkmovementmethod.getinstance());
tv.settext(charsequence);

其实看完代码就知道了,非常简单。大家可以试一试哦

希望本文所述对大家android程序设计有所帮助。

延伸 · 阅读

精彩推荐