我在textview中的文字是“打开链接http://www.google.com以查找任何内容。”我在我的类文件中设置的文本。所以,当我点击这个链接。该链接在浏览器中打开。我想在我的网页视图中打开此链接。我怎样才能做到这一点? 我的xml文件是
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="TextView" />
<WebView
android:id="@+id/webView1"
android:layout_width="match_parent"
android:layout_height="444dp" />
答案 0 :(得分:0)
做这样的事,
你的oncreate方法中的,
WebView mywebView = (WebView) findViewById(R.id.webview);
mywebView.setWebViewClient(new MyWebViewClient());
然后创建一个类,
class MyWebViewClient extends WebViewClient {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
if(url.contains("somePartOfYourUniqueUrl")){
return super.shouldOverrideUrlLoading(view, url);
} else {
view.loadUrl(url); // load url in webview
return true;
}
}
答案 1 :(得分:0)
使用java.net.URL
以下是您的帮助链接,使用此链接可以解析给定字符串中的url
答案 2 :(得分:0)
您可以使用WebView执行此操作,您需要声明WebViewClient对象并覆盖public boolean shouldOverrideUrlLoading (WebView view, String url)
方法,在那里您可以过滤网址或提供一些自定义功能。
在您的情况下,要继续使用WebView,您需要在该方法上返回false。
处理TextView's
网址上的点击事件。作为it's suggested on this question,您可以过滤包含Activity的WebView上的ACTION_VIEW
意图。如果您需要more guidance about intent-filters, check this out。
对于TextView,它需要更多的工作,你必须制作自己的Linkyfy类副本并使用TransformFilter来使链接按照你想要的方式运行。请查看同一TextView