package com.ly.supermvp.delegate; import android.graphics.Bitmap; import android.support.design.widget.CollapsingToolbarLayout; import android.support.v7.widget.Toolbar; import android.view.View; import android.webkit.WebSettings; import android.webkit.WebView; import android.webkit.WebViewClient; import android.widget.ImageView; import com.ly.supermvp.R; import com.ly.supermvp.mvp_frame.view.AppDelegate; import com.ly.supermvp.utils.GlideUtil; import com.rey.material.widget.ProgressView; import butterknife.Bind; /** * <Pre> * 新闻详情界面代理 * </Pre> * * @author 刘阳 * @version 1.0 * <p/> * Create by 2016/3/6 15:34 * @see https://github.com/liuyanggithub/SuperMvp */ public class NewsDetailActivityDelegate extends AppDelegate{ @Bind(R.id.toolbar) Toolbar mToolbar; @Bind(R.id.progress) ProgressView mProgressView; @Bind(R.id.webview) WebView mWebView; @Bind(R.id.collapsing_toolbar) CollapsingToolbarLayout mCollapsingToolbarLayout; @Bind(R.id.iv_detail) ImageView mImageView; @Override public int getRootLayoutId() { return R.layout.activity_news_detail; } @Override public void initWidget() { super.initWidget(); initWebView(); } /** * 初始化webview */ private void initWebView() { WebSettings ws = mWebView.getSettings(); ws.setJavaScriptEnabled(true); ws.setCacheMode(WebSettings.LOAD_CACHE_ELSE_NETWORK); //设置 缓存模式(true); ws.setAppCacheEnabled(true); ws.setSupportZoom(false); ws.setUseWideViewPort(true);// 可任意比例缩放 ws.setJavaScriptCanOpenWindowsAutomatically(true);//js支持 ws.setDomStorageEnabled(true); mWebView.setWebViewClient(new WebViewClient(){ @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { return false; } @Override public void onPageStarted(WebView view, String url, Bitmap favicon) { super.onPageStarted(view, url, favicon); mProgressView.setVisibility(View.VISIBLE); } @Override public void onPageFinished(WebView view, String url) { super.onPageFinished(view, url); mProgressView.setVisibility(View.GONE); } }); } @Override public android.support.v7.widget.Toolbar getToolbar() { return mToolbar; } public void setCollapsingToolbarLayoutTitle(String title){ mCollapsingToolbarLayout.setTitle(title); } public void setImageWithURL(String url){ GlideUtil.loadImage(getActivity(), url, mImageView); } public void loadNewsDetail(String url){ mWebView.loadUrl(url); } }