解决方案 »

  1.   

    怎么不正常了,该设置的都设置了吗?
    private void setWebview() {
    webview.getSettings().setJavaScriptEnabled(true);
    webview.getSettings().setDomStorageEnabled(true); webview.getSettings().setDatabaseEnabled(true);
    webview.getSettings().setGeolocationEnabled(true);
    String dir = webview.getContext().getDir("database", Context.MODE_PRIVATE).getPath();
    webview.getSettings().setDatabasePath(dir);
    webview.getSettings().setGeolocationDatabasePath(dir); webview.getSettings().setAppCacheEnabled(true);
    String cacheDir = webview.getContext().getDir("cache", Context.MODE_PRIVATE).getPath();
    webview.getSettings().setAppCachePath(cacheDir);
    webview.getSettings().setCacheMode(WebSettings.LOAD_DEFAULT);
    webview.getSettings().setAppCacheMaxSize(1024 * 1024 * 10);
    webview.getSettings().setAllowFileAccess(true); webview.getSettings().setPluginsEnabled(true);
    webview.getSettings().setRenderPriority(RenderPriority.HIGH);
    webview.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
    webview.getSettings().setSupportZoom(true);
    webview.getSettings().setDefaultZoom(WebSettings.ZoomDensity.FAR);
    webview.getSettings().setBuiltInZoomControls(true);
    webview.setWebViewClient(client);
    webview.setOnKeyListener(keyListener);
    webview.setWebChromeClient(chromeClient);
    webview.setDownloadListener(downloadListener);
    } private WebViewClient client = new WebViewClient() { @Override
    public boolean shouldOverrideUrlLoading(WebView view, String targetUrl) {
    if (WebUtil.get().isUrl(targetUrl)) {
    view.loadUrl(targetUrl);
    return true;
    }
    startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(targetUrl)));
    return true;
    } @Override
    public void onPageStarted(WebView view, String url, Bitmap favicon) {
    String msg = getGress(dispUrl(url));
    if (!toolUtil.isBlank(msg)) {
    gressDialog = ProgressDialog.show(webview.getContext(), "请稍等...", msg, true);
    gressDialog.setCanceledOnTouchOutside(true);
    }
    } @Override
    public void onPageFinished(WebView view, String url) {
    if (null != gressDialog) {
    gressDialog.dismiss();
    }
    gressDialog = null;
    } };
      

  2.   

    wv = (WebView) findViewById(R.id.wv);
    WebSettings ws = wv.getSettings();
    ws.setJavaScriptEnabled(true);
    ws.setJavaScriptCanOpenWindowsAutomatically(true);
    wv.setWebViewClient(client);WebViewClient client = new WebViewClient() { @Override
    public void onReceivedError(WebView view, int errorCode,
    String description, String failingUrl) {
    Log.e(TAG, "onReceivedError: " + errorCode + " " + description + " " + failingUrl);
    if (mUIHandler != null) {
    mUIHandler.sendEmptyMessageDelayed(MESSAGE_LOAD, RETRYTIME);
    }
    } @Override
    public boolean shouldOverrideUrlLoading(WebView view, String url) {
    Log.e(TAG, "shouldOverrideUrlLoading: " + url);
    wv.loadUrl(url);
    return true;
    }
    };
    我就是这样写的
      

  3.   

    我下了个百度浏览器,访问http://www.hshfy.sh.cn/的友情链接,它会另外开一标签页。那我是不是也只能用这种方法了?
      

  4.   

    我下了个百度浏览器,访问http://www.hshfy.sh.cn/的友情链接,它会另外开一标签页。那我是不是也只能用这种方法了?onCreateWindow 你看看这个回调,目前针对单个webview的话,需要处理新开标签页的情况