Android 拦截TextView中超链接点击事件

Android 拦截TextView中超链接点击事件,第1张

概述Android 拦截TextView中超链接的点击事件 1.在xml中为TextView添加autoLink属性 <TextView ... android:autoLink = "web" ... /> 2. private void setLinkClickable(final SpannableStringBuilder clickableHtmlBuilder, f AndroID 拦截TextVIEw中超链接的点击事件

1.在xml中为TextVIEw添加autolink属性

<TextVIEw    ...    androID:autolink = "web"    ... />

2.

private voID setlinkClickable(final SpannableStringBuilder clickableHTMLBuilder,final URLSpan urlSpan) {    int start = clickableHTMLBuilder.getSpanStart(urlSpan);    int end = clickableHTMLBuilder.getSpanEnd(urlSpan);    int flags = clickableHTMLBuilder.getSpanFlags(urlSpan);    ClickableSpan clickableSpan = new ClickableSpan() {        @OverrIDe        public voID onClick(VIEw Widget) {            String originUrl = urlSpan.getURL();//获取URL地址            //do something            ...        }    };    clickableHTMLBuilder.setSpan(clickableSpan,start,end,flags);}private CharSequence getClickableHTML(Spanned spannedHTML) {    SpannableStringBuilder clickableHTMLBuilder = new SpannableStringBuilder(spannedHTML);    URLSpan[] urls = clickableHTMLBuilder.getSpans(0,spannedHTML.length(),URLSpan.class);    for (final URLSpan span : urls){        setlinkClickable(clickableHTMLBuilder,span);    }    return clickableHTMLBuilder;}

3.

String urlText;Spanned spanned = HTML.fromHTML(urlText);textVIEw.setText(getClickableHTML(spanned));textVIEw.setMovementMethod(linkMovementMethod.getInstance());
总结

以上是内存溢出为你收集整理的Android 拦截TextView中超链接点击事件全部内容,希望文章能够帮你解决Android 拦截TextView中超链接点击事件所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1123404.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-30
下一篇 2022-05-30

发表评论

登录后才能评论

评论列表(0条)

保存