Notice: 函数 WP_Scripts::localize 的调用方法不正确$l10n 参数必须是一个数组。若要将任意数据传递给脚本,请改用 wp_add_inline_script() 函数。 请查阅调试 WordPress来获取更多信息。 (这个消息是在 5.7.0 版本添加的。) in /data/www/appblog/wp-includes/functions.php on line 6131

Android WebView基本设置及监听设置

WebView基本设置

WebView基础设置,实现WebView加载数据

WebSettings webSettings = mWebView.getSettings();

// 支持JavaScript,允许WebKit执行JavaScript代码
webSettings.setJavaScriptEnabled(true);

// 设置缓存模式
webSettings.setCacheMode(WebSettings.LOAD_DEFAULT);

// 设置为true表示支持使用JavaScript打开新的窗口
webSettings.setJavaScriptCanOpenWindowsAutomatically(true);

// 网页需要保存一些数据时候,设置以下属性
webSettings.setDomStorageEnabled(true);

// 设置为使用WebView推荐的窗口
webSettings.setUseWideViewPort(true);

// 自适应屏幕
webSettings.setLayoutAlgorithm(WebSettings.LayoutAlgorithm.SINGLE_COLUMN);
webSettings.setLoadWithOverviewMode(true);

// 设置是否启用地理位置
webSettings.setGeolocationEnabled(true);

// 设置可以支持缩放
webSettings.setSupportZoom(true);

// 设置出现缩放工具,缩放功能是否使用
webSettings.setBuiltInZoomControls(false);

// 设置网页渲染优先级
webSettings.setRenderPriority(RenderPriority.HIGH);

// 设置水平滚动条
webview.setHorizontalScrollBarEnabled(false);

// 设置垂直滚动条
webview.setVerticalScrollbarOverlay(true);

// 设置滚动条的样式
webview.setScrollBarStyle(WebView.SCROLLBARS_OUTSIDE_OVERLAY);

// 重写WebChromeClient监听网页加载的进度
webview.setWebChromeClient(new WebChromeClient() {
    @Override
    public void onProgressChanged(WebView view, int newProgress) {
        super.onProgressChanged(view, newProgress);
    }
});

// 重写WebViewClient可以监听网页的跳转和资源加载等等
webview.setWebViewClient(new WebViewClient());

WebView监听设置

页面加载进度监听

mWebView.setWebChromeClient(new WebChromeClient() {
    @Override
    public void onProgressChanged(WebView view, int newProgress) {
        super.onProgressChanged(view, newProgress);
    }
});

页面加载完成与加载失败的监听

mWebView..setWebViewClient(new webClient() {
    @Override
    public void onPageFinished(WebView view, String url) {
        super.onPageFinished(view, url);
    }

    @Override
    public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
        super.onReceivedError(view, errorCode, description, failingUrl);
        view.loadUrl("file:///android_asset/default_page/index.html");
    }
});
上一篇 GreenDao insert 解决 PRIMARY KEY must be unique
下一篇 Android开发MultiDex分包流程