0

如何让 WebView 在 WebView 本身而不是浏览器中打开链接?

这是我的代码:

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_dsaif);
    runDialog(5);
    WebView engine = (WebView) findViewById(R.id.web_engine);
    engine.loadUrl("http://android.dsaif.tk/store/");
}

请提供完整的代码和修复,因为我对 Android 开发非常陌生。谢谢。

4

3 回答 3

5

试试这样...

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_dsaif);
    runDialog(5);
    WebView engine = (WebView) findViewById(R.id.web_engine);
    engine.loadUrl("http://android.dsaif.tk/store/");
    engine.setWebViewClient( new HelloWebViewClient() );
} 



  private class HelloWebViewClient extends WebViewClient {

      @Override
      public boolean shouldOverrideUrlLoading( WebView view, String url ) {                 

         return false;
      }
  }
于 2012-09-18T12:44:40.313 回答
0

试试这段代码…………

 public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.share_email);
    webE = (WebView)viewToLoad.findViewById(R.id.webE);
        webE.loadUrl("http://some url");
        webE.setWebViewClient(new HelloWebViewClient());
 }

 class HelloWebViewClient extends WebViewClient {
    @Override
    public boolean shouldOverrideUrlLoading(WebView view, String url)
    {

        view.loadUrl(url);
        return true;
    }
}
于 2012-09-18T12:50:31.770 回答
0

我们在项目中也遇到了这个问题。我们通过在项目的 web 端使用 jQuery Mobile 解决了这个问题。如果你正在编写项目的网页端,我可以建议你使用 jQuery Mobile。

于 2012-09-18T13:22:10.653 回答