View=android.widget.ZoomButtonsController$Container not attached to window manager

来源:互联网 发布:linux 安装gzip 编辑:程序博客网 时间:2024/06/05 05:04

bug 信息如图:
这里写图片描述

搜索 ZoomButtonsController 之后几乎所有的问题都指向: WebView

看下 WebActivity,这个版本为了兼容合作公司的网页,加了一堆配置

        webview.getSettings().setLayoutAlgorithm(WebSettings.LayoutAlgorithm.NARROW_COLUMNS);        webview.getSettings().setBuiltInZoomControls(true);        webview.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);        webview.getSettings().setAllowFileAccess(true);        webview.getSettings().setSupportZoom(true);        webview.getSettings().setUseWideViewPort(true);        webview.getSettings().setSupportMultipleWindows(true);        webview.getSettings().setAppCacheEnabled(true);        webview.getSettings().setDomStorageEnabled(true);        webview.getSettings().setGeolocationEnabled(true);        webview.getSettings().setAppCacheMaxSize(Long.MAX_VALUE);        webview.getSettings().setPluginState(WebSettings.PluginState.ON_DEMAND);        webview.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE);

问题应该就出在这里,按照这篇文章中的说法:
webview ZoomButtonsController 调用崩溃问题android.widget.ZoomButtonsController,在调用 webView.destroy() 之前,应该先调用: webview.setVisibility(View.GONE) ,不过之后在这篇文章中又提到部分手机不兼容的问题,那么,事实上原生 WebView 的 ZoomButton 巨丑,商量之后,果断禁用掉,还省去了一堆麻烦事:

        webview.getSettings().setLayoutAlgorithm(WebSettings.LayoutAlgorithm.NARROW_COLUMNS);        webview.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);        webview.getSettings().setAllowFileAccess(true);        webview.getSettings().setUseWideViewPort(true);        webview.getSettings().setSupportMultipleWindows(true);        webview.getSettings().setAppCacheEnabled(true);        webview.getSettings().setDomStorageEnabled(true);        webview.getSettings().setGeolocationEnabled(true);        webview.getSettings().setAppCacheMaxSize(Long.MAX_VALUE);        webview.getSettings().setPluginState(WebSettings.PluginState.ON_DEMAND);        webview.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE);        webview.getSettings().setBuiltInZoomControls(false);        webview.getSettings().setSupportZoom(flase);
阅读全文
0 0