// Path: common/src/main/java/io/gitcafe/zhanjiashu/common/adapter/BaseListAdapter.java
// public abstract class BaseListAdapter<T> extends BaseAdapter {
// 
//     private Context mContext;
//     private List<T> mData;
//     private int mItemResource;
// 
//     public BaseListAdapter(Context context, List<T> data) {
//         mContext = context;
//         mData = (data == null ? new ArrayList<T>() : data);
//     }
// 
//     @Override
//     public int getCount() {
//         return mData.size();
//     }
// 
//     @Override
//     public T getItem(int position) {
//         if (position >= mData.size()) {
//             return null;
//         }
//         return mData.get(position);
//     }
// 
//     @Override
//     public long getItemId(int position) {
//         return position;
//     }
// 
// 
//     @Override
//     public View getView(int position, View convertView, ViewGroup parent) {
//         ViewHolder holder;
//         if (convertView == null) {
//             convertView = LayoutInflater.from(mContext).inflate(getItemResource(), null);
//             holder = new ViewHolder(convertView);
//             convertView.setTag(holder);
//         } else {
//             holder = (ViewHolder) convertView.getTag();
//         }
//         return getItemView(position, convertView, holder);
//     }
// 
//     protected abstract View getItemView(int position, View convertView, ViewHolder holder);
// 
//     protected abstract int getItemResource();
// 
//     public void addAll(List<T> list) {
//         mData.addAll(list);
//         notifyDataSetChanged();
//     }
// 
//     public void remove(int index) {
//         mData.remove(index);
//     }
// 
//     public void remove(T item) {
//         mData.remove(item);
//         notifyDataSetChanged();
//     }
// 
//     public void replaceAll(List<T> list) {
//         mData.clear();
//         mData.addAll(list);
//         notifyDataSetChanged();
//     }
// 
//     public class ViewHolder {
//         private SparseArray<View> viewArray = new SparseArray<View>();
//         private View view;
// 
//         ViewHolder(View view) {
//             this.view = view;
//         }
// 
//         public <T extends View> T getView(int resId) {
//             View v = viewArray.get(resId);
//             if (v == null) {
//                 v = view.findViewById(resId);
//                 viewArray.put(resId, v);
//             }
//             return (T) v;
//         }
//     }
// }
// 
// Path: app/src/main/java/io/gitcafe/zhanjiashu/newzhihudialy/model/ThemeEntity.java
// public class ThemeEntity implements Parcelable {
//     private String thumbnail;
//     private int color;
//     private String name;
//     private String description;
//     private int id;
// 
//     public void setThumbnail(String thumbnail) {
//         this.thumbnail = thumbnail;
//     }
// 
//     public void setColor(int color) {
//         this.color = color;
//     }
// 
//     public void setName(String name) {
//         this.name = name;
//     }
// 
//     public void setDescription(String description) {
//         this.description = description;
//     }
// 
//     public void setId(int id) {
//         this.id = id;
//     }
// 
//     public String getThumbnail() {
//         return thumbnail;
//     }
// 
//     public int getColor() {
//         return color;
//     }
// 
//     public String getName() {
//         return name;
//     }
// 
//     public String getDescription() {
//         return description;
//     }
// 
//     public int getId() {
//         return id;
//     }
// 
// 
//     @Override
//     public int describeContents() {
//         return 0;
//     }
// 
//     @Override
//     public void writeToParcel(Parcel dest, int flags) {
//         dest.writeString(this.thumbnail);
//         dest.writeInt(this.color);
//         dest.writeString(this.name);
//         dest.writeString(this.description);
//         dest.writeInt(this.id);
//     }
// 
//     public ThemeEntity() {
//     }
// 
//     protected ThemeEntity(Parcel in) {
//         this.thumbnail = in.readString();
//         this.color = in.readInt();
//         this.name = in.readString();
//         this.description = in.readString();
//         this.id = in.readInt();
//     }
// 
//     public static final Parcelable.Creator<ThemeEntity> CREATOR = new Parcelable.Creator<ThemeEntity>() {
//         public ThemeEntity createFromParcel(Parcel source) {
//             return new ThemeEntity(source);
//         }
// 
//         public ThemeEntity[] newArray(int size) {
//             return new ThemeEntity[size];
//         }
//     };
// }


import android.content.Context;
import android.view.View;
import android.widget.TextView;
import com.nostra13.universalimageloader.core.DisplayImageOptions;
import com.nostra13.universalimageloader.core.ImageLoader;
import java.util.List;
import de.hdodenhof.circleimageview.CircleImageView;
import io.gitcafe.zhanjiashu.common.adapter.BaseListAdapter;
import io.gitcafe.zhanjiashu.newzhihudialy.R;
import io.gitcafe.zhanjiashu.newzhihudialy.model.ThemeEntity;
package io.gitcafe.zhanjiashu.newzhihudialy.adapter;





/**
 * Created by Jiashu on 2015/6/18.
 */
public class MenuListAdapter extends BaseListAdapter<ThemeEntity> {

    private final DisplayImageOptions mDisplayImageOptions;

    public MenuListAdapter(Context context, List<ThemeEntity> data) {
        super(context, data);

        mDisplayImageOptions = new DisplayImageOptions.Builder()
                .showImageOnLoading(R.drawable.push_icon)
                .showImageOnFail(R.drawable.push_icon)
// Path: common/src/main/java/io/gitcafe/zhanjiashu/common/adapter/BaseListAdapter.java
// public abstract class BaseListAdapter<T> extends BaseAdapter {
// 
//     private Context mContext;
//     private List<T> mData;
//     private int mItemResource;
// 
//     public BaseListAdapter(Context context, List<T> data) {
//         mContext = context;
//         mData = (data == null ? new ArrayList<T>() : data);
//     }
// 
//     @Override
//     public int getCount() {
//         return mData.size();
//     }
// 
//     @Override
//     public T getItem(int position) {
//         if (position >= mData.size()) {
//             return null;
//         }
//         return mData.get(position);
//     }
// 
//     @Override
//     public long getItemId(int position) {
//         return position;
//     }
// 
// 
//     @Override
//     public View getView(int position, View convertView, ViewGroup parent) {
//         ViewHolder holder;
//         if (convertView == null) {
//             convertView = LayoutInflater.from(mContext).inflate(getItemResource(), null);
//             holder = new ViewHolder(convertView);
//             convertView.setTag(holder);
//         } else {
//             holder = (ViewHolder) convertView.getTag();
//         }
//         return getItemView(position, convertView, holder);
//     }
// 
//     protected abstract View getItemView(int position, View convertView, ViewHolder holder);
// 
//     protected abstract int getItemResource();
// 
//     public void addAll(List<T> list) {
//         mData.addAll(list);
//         notifyDataSetChanged();
//     }
// 
//     public void remove(int index) {
//         mData.remove(index);
//     }
// 
//     public void remove(T item) {
//         mData.remove(item);
//         notifyDataSetChanged();
//     }
// 
//     public void replaceAll(List<T> list) {
//         mData.clear();
//         mData.addAll(list);
//         notifyDataSetChanged();
//     }
// 
//     public class ViewHolder {
//         private SparseArray<View> viewArray = new SparseArray<View>();
//         private View view;
// 
//         ViewHolder(View view) {
//             this.view = view;
//         }
// 
//         public <T extends View> T getView(int resId) {
//             View v = viewArray.get(resId);
//             if (v == null) {
//                 v = view.findViewById(resId);
//                 viewArray.put(resId, v);
//             }
//             return (T) v;
//         }
//     }
// }
// 
// Path: app/src/main/java/io/gitcafe/zhanjiashu/newzhihudialy/model/ThemeEntity.java
// public class ThemeEntity implements Parcelable {
//     private String thumbnail;
//     private int color;
//     private String name;
//     private String description;
//     private int id;
// 
//     public void setThumbnail(String thumbnail) {
//         this.thumbnail = thumbnail;
//     }
// 
//     public void setColor(int color) {
//         this.color = color;
//     }
// 
//     public void setName(String name) {
//         this.name = name;
//     }
// 
//     public void setDescription(String description) {
//         this.description = description;
//     }
// 
//     public void setId(int id) {
//         this.id = id;
//     }
// 
//     public String getThumbnail() {
//         return thumbnail;
//     }
// 
//     public int getColor() {
//         return color;
//     }
// 
//     public String getName() {
//         return name;
//     }
// 
//     public String getDescription() {
//         return description;
//     }
// 
//     public int getId() {
//         return id;
//     }
// 
// 
//     @Override
//     public int describeContents() {
//         return 0;
//     }
// 
//     @Override
//     public void writeToParcel(Parcel dest, int flags) {
//         dest.writeString(this.thumbnail);
//         dest.writeInt(this.color);
//         dest.writeString(this.name);
//         dest.writeString(this.description);
//         dest.writeInt(this.id);
//     }
// 
//     public ThemeEntity() {
//     }
// 
//     protected ThemeEntity(Parcel in) {
//         this.thumbnail = in.readString();
//         this.color = in.readInt();
//         this.name = in.readString();
//         this.description = in.readString();
//         this.id = in.readInt();
//     }
// 
//     public static final Parcelable.Creator<ThemeEntity> CREATOR = new Parcelable.Creator<ThemeEntity>() {
//         public ThemeEntity createFromParcel(Parcel source) {
//             return new ThemeEntity(source);
//         }
// 
//         public ThemeEntity[] newArray(int size) {
//             return new ThemeEntity[size];
//         }
//     };
// }


// Path: app/src/main/java/io/gitcafe/zhanjiashu/newzhihudialy/adapter/MenuListAdapter.java
import android.content.Context;
import android.view.View;
import android.widget.TextView;
import com.nostra13.universalimageloader.core.DisplayImageOptions;
import com.nostra13.universalimageloader.core.ImageLoader;
import java.util.List;
import de.hdodenhof.circleimageview.CircleImageView;
import io.gitcafe.zhanjiashu.common.adapter.BaseListAdapter;
import io.gitcafe.zhanjiashu.newzhihudialy.R;
import io.gitcafe.zhanjiashu.newzhihudialy.model.ThemeEntity;

package io.gitcafe.zhanjiashu.newzhihudialy.adapter;





/**
 * Created by Jiashu on 2015/6/18.
 */
public class MenuListAdapter extends BaseListAdapter<ThemeEntity> {

    private final DisplayImageOptions mDisplayImageOptions;

    public MenuListAdapter(Context context, List<ThemeEntity> data) {
        super(context, data);

        mDisplayImageOptions = new DisplayImageOptions.Builder()
                .showImageOnLoading(R.drawable.push_icon)
                .showImageOnFail(R.drawable.push_icon)
                .cacheInMemory(true)