我的应用程序中有一个webView。当一个人加载一个url时,网页被加载到浏览器中,而不是我的应用程序中,因为选项菜单是默认的,而不是我分配的。如何停止此操作,并使其加载到我的网页视图中而不是浏览器中?
我尝试过webViewClient,但它似乎不起作用。
public class webView extends Activity {
WebView myWebView;
String url;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
myWebView = (WebView) findViewById(R.id.webview);
myWebView.getSettings().setJavaScriptEnabled(true);
url = "http://d.android.com";
myWebView.setWebViewClient(new WebViewClient()
{
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url)
{
//url="http://google.com";
//view.loadUrl(url);
System.out.println("hello");
return true;
}
});
//Toast.makeText(this, "", Toast.LENGTH_SHORT);
myWebView.loadUrl(url);
}
/** Creteing an options menu**/
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.menu, menu);
//return true;
// TODO Auto-generated method stub
return super.onCreateOptionsMenu(menu);
}发布于 2011-09-22 20:47:32
如果你从来不想在浏览器中打开一个网址,你必须在shouldOverrideUrlLoading中使用return false
发布于 2013-06-06 01:34:08
另一种解决方案可以是:
myWebView.setWebViewClient(new WebViewClient());默认情况下,默认web浏览器打开并加载目标URL,若要覆盖此行为,请调用
webView.setWebViewClient(new WebViewClient());https://stackoverflow.com/questions/7514598
复制相似问题