我想让web浏览器在textview内点击。我用这个代码Android链接网址链接非网址
tv.setLinksClickable(true);
tv.setAutoLinkMask(Linkify.WEB_URLS);
Linkify.addLinks(tv, Linkify.WEB_URLS);
这确实linkify网站网址,但也似乎随机链接其他文字一样z.xyz dzo.yzw等。
如何判断链接到链接的URL?为了尝试和检测以HTTP链接://或https://开头我想这个模式编译
tv.setLinksClickable(true);
Pattern httpPattern = Pattern.compile("^(http|https)://");
Linkify.addLinks(tv, httpPattern,"");
,但没有工作(不链接被高亮显示)。 RegEx是否正确? addLinks的第三个参数应该是什么?
感谢您的任何提示,以获得此工作。
仍然突出显示不以http开头的字符串。例如“z.xy”突出显示为一个URL。正则表达式的确发现了https,但addLinks仍然会链接整个textView。 – Some1Else
例如,尝试“测试https://www.test.com测试https://www.blah.com test z.xy测试”作为textView内容。只应该突出显示2个URL,但也会将z.xy作为URL加亮显示。 Stackoverflow从该文本中删除了https和http,但是URLS应该包含它们。 – Some1Else
我不明白,我试过这个字符串 - >“z.xy”和'tv.getText()。toString()。matches(regex)'returned'false',和string - >“http://z.xy “返回”true“。检查你的代码,在我的情况下,如果'工作正常。 – walkmn