// Path: app/src/main/java/com/lauren/simplenews/beans/NewsBean.java
// public class NewsBean implements Serializable {
// 
//     /**
//      * docid
//      */
//     public String docid;
//     /**
//      * 标题
//      */
//     public String title;
//     /**
//      * 小内容
//      */
//     public String digest;
//     /**
//      * 图片地址
//      */
//     public String imgsrc;
//     /**
//      * 来源
//      */
//     public String source;
//     /**
//      * 时间
//      */
//     public String ptime;
//     /**
//      * TAG
//      */
//     private String tag;
// 
//     public String url;
// 
// }
// 
// Path: app/src/main/java/com/lauren/simplenews/view/GlideImageView.java
// public class GlideImageView extends ImageView {
//     int placeholderId = 0;
//     int failureImageId = 0;
//     boolean roundAsCircle = false;
//     int roundedCornerRadius = 0;
//     Context context;
// 
//     boolean failure = false;
//     RequestManager manager;
//     GenericRequestBuilder builder;
//     GlideRoundTransform mRoundTrans;
// 
//     public GlideImageView(Context context) {
//         super(context);
//     }
// 
//     public GlideImageView(Context context, AttributeSet attrs) {
//         this(context, attrs, 0);
//     }
// 
//     @TargetApi(Build.VERSION_CODES.HONEYCOMB)
//     public GlideImageView(Context context, AttributeSet attrs, int defStyle) {
//         super(context, attrs, defStyle);
//         init(context, attrs);
//     }
//     
//     private void init(Context context, AttributeSet attrs) {
//         manager = Glide.with(context);
//         this.context = context;
//         mRoundTrans = new GlideRoundTransform(context);
//         TypedArray a = context.obtainStyledAttributes(attrs, R.styleable.GlideImageView);
//         try {
//             placeholderId = a.getResourceId(R.styleable.GlideImageView_placeholderImage, placeholderId);
//             failureImageId = a.getResourceId(R.styleable.GlideImageView_placeholderImage, failureImageId);
//             roundAsCircle = a.getBoolean(R.styleable.GlideImageView_roundAsCircle, roundAsCircle);
//             roundedCornerRadius = a.getDimensionPixelSize(R.styleable.GlideImageView_roundedCornerRadius,
//                 roundedCornerRadius);
//         } finally {
//             a.recycle();
//         }
// 
//         if (failureImageId > 0) {
//             this.setFailureImage(failureImageId);
//         }
//     }
// 
//     /**
//      * Displays an fail image
//      */
//     public void setFailureImage(int id) {
//         if (failure) {
//             this.setImageResource(id);
//         }
//     }
// 
//     /**
//      * Displays an image given by the url
//      *
//      * @param url url of the image
//      */
//     public void setImageURL(String url) {
//         if (url == null) {
//             return;
//         }
//         builder = manager.load(url).centerCrop().placeholder(placeholderId).error(failureImageId);
//         if (roundAsCircle) {
//             builder.transform(mRoundTrans);
//         }
//         builder.into(this);
//     }
// 
//     public class GlideRoundTransform extends BitmapTransformation {
//         private float radius = 0f;
// 
//         public GlideRoundTransform(Context context) {
//             this(context, roundedCornerRadius);
//         }
// 
//         public GlideRoundTransform(Context context, int dp) {
//             super(context);
//             this.radius = Resources.getSystem().getDisplayMetrics().density * dp;
//         }
// 
//         @Override
//         protected Bitmap transform(BitmapPool pool, Bitmap toTransform, int outWidth, int outHeight) {
//             return roundCrop(pool, toTransform);
//         }
// 
//         private Bitmap roundCrop(BitmapPool pool, Bitmap source) {
//             if (source == null) {
//                 return null;
//             }
//             Bitmap result = pool.get(source.getWidth(), source.getHeight(), Bitmap.Config.ARGB_8888);
//             if (result == null) {
//                 result = Bitmap.createBitmap(source.getWidth(), source.getHeight(), Bitmap.Config.ARGB_8888);
//             }
//             Canvas canvas = new Canvas(result);
//             Paint paint = new Paint();
//             paint.setShader(new BitmapShader(source, BitmapShader.TileMode.CLAMP, BitmapShader.TileMode.CLAMP));
//             paint.setAntiAlias(true);
//             RectF rectF = new RectF(0f, 0f, source.getWidth(), source.getHeight());
//             canvas.drawRoundRect(rectF, radius, radius, paint);
//             return result;
//         }
// 
//         @Override
//         public String getId() {
//             return getClass().getName() + Math.round(radius);
//         }
//     }
// }


import android.content.Context;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
import com.lauren.simplenews.R;
import com.lauren.simplenews.beans.NewsBean;
import com.lauren.simplenews.view.GlideImageView;
import java.util.List;
package com.lauren.simplenews.news;




/**
 * Description :
 * Author : lauren
 * Email  : lauren.liuling@gmail.com
 * Blog   : http://www.liuling123.com
 * Date   : 15/12/19
 */
public class NewsAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> {
    private static final int TYPE_ITEM = 0;
    private static final int TYPE_FOOTER = 1;

// Path: app/src/main/java/com/lauren/simplenews/beans/NewsBean.java
// public class NewsBean implements Serializable {
// 
//     /**
//      * docid
//      */
//     public String docid;
//     /**
//      * 标题
//      */
//     public String title;
//     /**
//      * 小内容
//      */
//     public String digest;
//     /**
//      * 图片地址
//      */
//     public String imgsrc;
//     /**
//      * 来源
//      */
//     public String source;
//     /**
//      * 时间
//      */
//     public String ptime;
//     /**
//      * TAG
//      */
//     private String tag;
// 
//     public String url;
// 
// }
// 
// Path: app/src/main/java/com/lauren/simplenews/view/GlideImageView.java
// public class GlideImageView extends ImageView {
//     int placeholderId = 0;
//     int failureImageId = 0;
//     boolean roundAsCircle = false;
//     int roundedCornerRadius = 0;
//     Context context;
// 
//     boolean failure = false;
//     RequestManager manager;
//     GenericRequestBuilder builder;
//     GlideRoundTransform mRoundTrans;
// 
//     public GlideImageView(Context context) {
//         super(context);
//     }
// 
//     public GlideImageView(Context context, AttributeSet attrs) {
//         this(context, attrs, 0);
//     }
// 
//     @TargetApi(Build.VERSION_CODES.HONEYCOMB)
//     public GlideImageView(Context context, AttributeSet attrs, int defStyle) {
//         super(context, attrs, defStyle);
//         init(context, attrs);
//     }
//     
//     private void init(Context context, AttributeSet attrs) {
//         manager = Glide.with(context);
//         this.context = context;
//         mRoundTrans = new GlideRoundTransform(context);
//         TypedArray a = context.obtainStyledAttributes(attrs, R.styleable.GlideImageView);
//         try {
//             placeholderId = a.getResourceId(R.styleable.GlideImageView_placeholderImage, placeholderId);
//             failureImageId = a.getResourceId(R.styleable.GlideImageView_placeholderImage, failureImageId);
//             roundAsCircle = a.getBoolean(R.styleable.GlideImageView_roundAsCircle, roundAsCircle);
//             roundedCornerRadius = a.getDimensionPixelSize(R.styleable.GlideImageView_roundedCornerRadius,
//                 roundedCornerRadius);
//         } finally {
//             a.recycle();
//         }
// 
//         if (failureImageId > 0) {
//             this.setFailureImage(failureImageId);
//         }
//     }
// 
//     /**
//      * Displays an fail image
//      */
//     public void setFailureImage(int id) {
//         if (failure) {
//             this.setImageResource(id);
//         }
//     }
// 
//     /**
//      * Displays an image given by the url
//      *
//      * @param url url of the image
//      */
//     public void setImageURL(String url) {
//         if (url == null) {
//             return;
//         }
//         builder = manager.load(url).centerCrop().placeholder(placeholderId).error(failureImageId);
//         if (roundAsCircle) {
//             builder.transform(mRoundTrans);
//         }
//         builder.into(this);
//     }
// 
//     public class GlideRoundTransform extends BitmapTransformation {
//         private float radius = 0f;
// 
//         public GlideRoundTransform(Context context) {
//             this(context, roundedCornerRadius);
//         }
// 
//         public GlideRoundTransform(Context context, int dp) {
//             super(context);
//             this.radius = Resources.getSystem().getDisplayMetrics().density * dp;
//         }
// 
//         @Override
//         protected Bitmap transform(BitmapPool pool, Bitmap toTransform, int outWidth, int outHeight) {
//             return roundCrop(pool, toTransform);
//         }
// 
//         private Bitmap roundCrop(BitmapPool pool, Bitmap source) {
//             if (source == null) {
//                 return null;
//             }
//             Bitmap result = pool.get(source.getWidth(), source.getHeight(), Bitmap.Config.ARGB_8888);
//             if (result == null) {
//                 result = Bitmap.createBitmap(source.getWidth(), source.getHeight(), Bitmap.Config.ARGB_8888);
//             }
//             Canvas canvas = new Canvas(result);
//             Paint paint = new Paint();
//             paint.setShader(new BitmapShader(source, BitmapShader.TileMode.CLAMP, BitmapShader.TileMode.CLAMP));
//             paint.setAntiAlias(true);
//             RectF rectF = new RectF(0f, 0f, source.getWidth(), source.getHeight());
//             canvas.drawRoundRect(rectF, radius, radius, paint);
//             return result;
//         }
// 
//         @Override
//         public String getId() {
//             return getClass().getName() + Math.round(radius);
//         }
//     }
// }


// Path: app/src/main/java/com/lauren/simplenews/news/NewsAdapter.java
import android.content.Context;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
import com.lauren.simplenews.R;
import com.lauren.simplenews.beans.NewsBean;
import com.lauren.simplenews.view.GlideImageView;
import java.util.List;

package com.lauren.simplenews.news;




/**
 * Description :
 * Author : lauren
 * Email  : lauren.liuling@gmail.com
 * Blog   : http://www.liuling123.com
 * Date   : 15/12/19
 */
public class NewsAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> {
    private static final int TYPE_ITEM = 0;
    private static final int TYPE_FOOTER = 1;

    private List<NewsBean> mData;