static WebParentLayout getWebParentLayoutByWebView(WebView webView) { ViewGroup mViewGroup = null; if (!(webView.getParent() instanceof ViewGroup)) { throw new IllegalStateException("please check webcreator's create method was be called ?"); } mViewGroup = (ViewGroup) webView.getParent(); AbsAgentWebUIController mAgentWebUIController; while (mViewGroup != null) { LogUtils.i(TAG, "ViewGroup:" + mViewGroup); if (mViewGroup.getId() == R.id.web_parent_layout_id) { WebParentLayout mWebParentLayout = (WebParentLayout) mViewGroup; LogUtils.i(TAG, "found WebParentLayout"); return mWebParentLayout; } else { ViewParent mViewParent = mViewGroup.getParent(); if (mViewParent instanceof ViewGroup) { mViewGroup = (ViewGroup) mViewParent; } else { mViewGroup = null; } } } throw new IllegalStateException("please check webcreator's create method was be called ?"); }
static final void clearWebView(WebView m) { if (m == null) { return; } if (Looper.myLooper() != Looper.getMainLooper()) { return; } m.loadUrl("about:blank"); m.stopLoading(); if (m.getHandler() != null) { m.getHandler().removeCallbacksAndMessages(null); } m.removeAllViews(); ViewGroup mViewGroup = null; if ((mViewGroup = ((ViewGroup) m.getParent())) != null) { mViewGroup.removeView(m); } m.setWebChromeClient(null); m.setWebViewClient(null); m.setTag(null); m.clearHistory(); m.destroy(); m = null; }
@Override protected void onDestroy() { if(Build.VERSION.SDK_INT>=Build.VERSION_CODES.LOLLIPOP) { getWindow().getSharedElementReturnTransition().removeListener(zhihuReturnHomeListener); } //webview内存泄露 if (wvZhihu != null) { ((ViewGroup) wvZhihu.getParent()).removeView(wvZhihu); wvZhihu.destroy(); wvZhihu = null; } mIZhihuStoryPresenter.unsubscrible(); super.onDestroy(); }
((ViewGroup) webView.getParent()).removeAllViews(); swipeRefreshLayout.addView(webView); swipeRefreshLayout.removeViewAt(1);
@Override protected void onDestroy() { super.onDestroy(); if (webView != null) { ViewGroup parent = (ViewGroup) webView.getParent(); if (parent != null) { parent.removeView(webView); } webView.removeAllViews(); webView.destroy(); } }
@Override protected void onDestroy() { super.onDestroy(); if (webView != null) { ViewGroup parent = (ViewGroup) webView.getParent(); if (parent != null) { parent.removeView(webView); } webView.removeAllViews(); webView.destroy(); } }
@Override public void onDestroyView() { super.onDestroyView(); if (mWebView != null) { Log.d("DAboutActivity", "onDestroy"); mWebView.removeAllViews(); mWebView.setWebViewClient(null); ((ViewGroup) mWebView.getParent()).removeView(mWebView); mWebView.setTag(null); mWebView.clearHistory(); mWebView.destroy(); mWebView = null; } } }
private void destroyWebView() { if (mWebView != null) { ViewGroup viewGroup = (ViewGroup) mWebView.getParent(); if (viewGroup != null) { viewGroup.removeView(mWebView); } mWebView.destroy(); mWebView = null; } }
@Override protected void onDestroy() { if (mWebView != null) { ((ViewGroup) mWebView.getParent()).removeView(mWebView); mWebView.destroy(); mWebView = null; } super.onDestroy(); }
@Override protected void onDestroy() { mPresenter.unSubcrible(); if (mWebView != null) { ((ViewGroup) mWebView.getParent()).removeView(mWebView); mWebView.destroy(); mWebView = null; } super.onDestroy(); }
public AsAdViewHolder(View view) { super(view); webView = AdsManager.getInstance().getWebView(); ViewGroup oldParent = (ViewGroup) webView.getParent(); if (oldParent != null) { oldParent.removeView(webView); } ((FrameLayout) view.findViewById(R.id.fl_web_view_container)).addView(webView); }
@Override protected void onDestroy() { super.onDestroy(); // 解决webView带来的内存泄漏 if (webView != null) { ((ViewGroup) webView.getParent()).removeView(webView); webView.destroy(); webView = null; } }
@Override protected void onDestroy() { super.onDestroy(); if (display != null) { ((ViewGroup) display.getParent()).removeView(display); display.destroy(); display = null; } }
@Override protected void onDestroy() { if (webView!= null) { webView.loadDataWithBaseURL(null, "", "text/html", "utf-8", null); webView.clearHistory(); ((ViewGroup) webView.getParent()).removeView(webView); webView.destroy(); webView= null; } super.onDestroy(); } }
@Override protected void onDestroy() { try { ((ViewGroup) webView.getParent()).removeView(webView); webView.removeAllViews(); webView.destroy(); } catch (Exception e) { e.printStackTrace(); } super.onDestroy(); } }
@Override protected void onDestroy() { if (mWebview != null) { mWebview.loadDataWithBaseURL(null, "", "text/html", "utf-8", null); mWebview.clearHistory(); ((ViewGroup) mWebview.getParent()).removeView(mWebview); mWebview.destroy(); mWebview = null; } super.onDestroy(); } }
@Override protected void onDestroy() { super.onDestroy(); if (mWebView != null) { mWebView.clearHistory(); ((ViewGroup) mWebView.getParent()).removeView(mWebView); mWebView.loadUrl("about:blank"); mWebView.stopLoading(); mWebView.setWebChromeClient(null); mWebView.setWebViewClient(null); mWebView.destroy(); mWebView = null; } } }
@Override protected void onDestroy() { super.onDestroy(); if (mWebView != null) { ((ViewGroup) mWebView.getParent()).removeView(mWebView); mWebView.removeAllViews(); mWebView.destroy(); } } }
@Override protected void onDestroy() { super.onDestroy(); // 解决webView带来的内存泄漏 if (webView != null) { ((ViewGroup) webView.getParent()).removeView(webView); webView.destroy(); webView = null; } UMShareAPI.get(this).release(); }
@Override public boolean onBackPressed() { dismissDialogFragment(); if (webView != null) { webView.setVisibility(View.INVISIBLE); ((ViewGroup) webView.getParent()).removeAllViews(); webView.clearHistory(); webView.clearCache(true); webView.destroy(); webView = null; } return false; }