我目前正在TextView中呈现HTML输入,如下所示:
tv.setText(Html.fromHtml("<a href='test'>test</a>"));
Run Code Online (Sandbox Code Playgroud)
显示的HTML是通过外部资源提供给我的,所以我不能像我一样改变它,但我当然可以对HTML进行一些正则表达式的修改,比如将href值更改为其他内容.
我想要的是能够直接从应用程序中处理链接点击,而不是让链接打开浏览器窗口.这可以实现吗?我猜测可以将href-value的协议设置为类似"myApp://"的东西,然后注册一些可以让我的应用程序处理该协议的东西.如果这确实是最好的方式,我想知道这是怎么做的,但我希望有一个更简单的方法来说,"当在这个文本视图中点击链接时,我想提出一个接收的事件链接的href值作为输入参数"
我正在Webview使用一些链接创建简单的应用程序textview并打开这些链接webview而不是默认浏览器.我textview包含各种不同的URL,我试图在我的应用程序的webview中打开每个链接.
这里代码:
tv.setText("www.google.com www.facebook.com www.yahoo.com");
tv.setMovementMethod(LinkMovementMethod.getInstance());;
tv.setText(Html.fromHtml(tv.getText().toString()));
Linkify.addLinks(tv, Linkify.WEB_URLS);
WebViewClient yourWebClient = new WebViewClient()
{
// Override page so it's load on my view only
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url)
{
// This line we let me load only pages inside Firstdroid Webpage
if ( url.contains("www") == true )
// Load new URL Don't override URL Link
return false;
// Return true to override url loading (In this case do …Run Code Online (Sandbox Code Playgroud)