// Path: app/src/main/java/com/yunq/gankio/data/entity/Girl.java
// public class Girl extends Soul {
// 
//     @Column("used")
//     public boolean used;
//     @Column("type")
//     public String type;
//     @Column("url")
//     public String url;
//     @Column("who")
//     public String who;
//     @Column("desc")
//     public String desc;
//     @Column("createdAt")
//     public Date createdAt;
//     @Column("publishedAt")
//     public Date publishedAt;
//     @Column("updatedAt")
//     public Date updatedAt;
// 
// }
// 
// Path: app/src/main/java/com/yunq/gankio/ui/widget/RatioImageView.java
// public class RatioImageView extends ImageView {
// 
//     private int originalWidth;
// 
//     private int originalHeight;
// 
//     public RatioImageView(Context context) {
//         super(context);
//     }
// 
//     public RatioImageView(Context context, AttributeSet attrs) {
//         super(context, attrs);
//     }
// 
//     public RatioImageView(Context context, AttributeSet attrs, int defStyleAttr) {
//         super(context, attrs, defStyleAttr);
//     }
// 
//     public void setOriginalSize(int originalWidth, int originalHeight) {
//         this.originalWidth = originalWidth;
//         this.originalHeight = originalHeight;
//     }
// 
//     @Override
//     protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
//         if (originalHeight > 0 && originalWidth > 0) {
//             float radio = (float) originalWidth / (float) originalHeight;
// 
//             int width = MeasureSpec.getSize(widthMeasureSpec);
//             int height = MeasureSpec.getSize(heightMeasureSpec);
// 
//             if (width > 0) {
//                 height = (int) ((float) width / radio);
//             }
// 
//             setMeasuredDimension(width, height);
//         } else {
//             super.onMeasure(widthMeasureSpec, heightMeasureSpec);
//         }
// 
//     }
// }


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.squareup.picasso.Picasso;
import com.yunq.gankio.R;
import com.yunq.gankio.data.entity.Girl;
import com.yunq.gankio.ui.widget.RatioImageView;
import java.util.ArrayList;
import java.util.List;
import butterknife.Bind;
import butterknife.ButterKnife;
        Picasso.with(mContext).load(entity.url).into(holder.mIvIndexPhoto);
        holder.mTvIndexIntro.setText(entity.desc);
        if (mIClickItem != null) {
            holder.mIvIndexPhoto.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    mIClickItem.onClickPhoto(position, holder.mIvIndexPhoto);
                }
            });
            holder.mTvIndexIntro.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    mIClickItem.onClickDesc(position, holder.mTvIndexIntro);
                }
            });
        }
    }

    @Override
    public int getItemCount() {
        return mListData.size();
    }

    public Girl getGirl(int position) {
        return mListData.get(position);
    }

    public static class ViewHolder extends RecyclerView.ViewHolder {

        @Bind(R.id.iv_index_photo)
// Path: app/src/main/java/com/yunq/gankio/data/entity/Girl.java
// public class Girl extends Soul {
// 
//     @Column("used")
//     public boolean used;
//     @Column("type")
//     public String type;
//     @Column("url")
//     public String url;
//     @Column("who")
//     public String who;
//     @Column("desc")
//     public String desc;
//     @Column("createdAt")
//     public Date createdAt;
//     @Column("publishedAt")
//     public Date publishedAt;
//     @Column("updatedAt")
//     public Date updatedAt;
// 
// }
// 
// Path: app/src/main/java/com/yunq/gankio/ui/widget/RatioImageView.java
// public class RatioImageView extends ImageView {
// 
//     private int originalWidth;
// 
//     private int originalHeight;
// 
//     public RatioImageView(Context context) {
//         super(context);
//     }
// 
//     public RatioImageView(Context context, AttributeSet attrs) {
//         super(context, attrs);
//     }
// 
//     public RatioImageView(Context context, AttributeSet attrs, int defStyleAttr) {
//         super(context, attrs, defStyleAttr);
//     }
// 
//     public void setOriginalSize(int originalWidth, int originalHeight) {
//         this.originalWidth = originalWidth;
//         this.originalHeight = originalHeight;
//     }
// 
//     @Override
//     protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
//         if (originalHeight > 0 && originalWidth > 0) {
//             float radio = (float) originalWidth / (float) originalHeight;
// 
//             int width = MeasureSpec.getSize(widthMeasureSpec);
//             int height = MeasureSpec.getSize(heightMeasureSpec);
// 
//             if (width > 0) {
//                 height = (int) ((float) width / radio);
//             }
// 
//             setMeasuredDimension(width, height);
//         } else {
//             super.onMeasure(widthMeasureSpec, heightMeasureSpec);
//         }
// 
//     }
// }


// Path: app/src/main/java/com/yunq/gankio/ui/adapter/MainListAdapter.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.squareup.picasso.Picasso;
import com.yunq.gankio.R;
import com.yunq.gankio.data.entity.Girl;
import com.yunq.gankio.ui.widget.RatioImageView;
import java.util.ArrayList;
import java.util.List;
import butterknife.Bind;
import butterknife.ButterKnife;

        Picasso.with(mContext).load(entity.url).into(holder.mIvIndexPhoto);
        holder.mTvIndexIntro.setText(entity.desc);
        if (mIClickItem != null) {
            holder.mIvIndexPhoto.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    mIClickItem.onClickPhoto(position, holder.mIvIndexPhoto);
                }
            });
            holder.mTvIndexIntro.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    mIClickItem.onClickDesc(position, holder.mTvIndexIntro);
                }
            });
        }
    }

    @Override
    public int getItemCount() {
        return mListData.size();
    }

    public Girl getGirl(int position) {
        return mListData.get(position);
    }

    public static class ViewHolder extends RecyclerView.ViewHolder {

        @Bind(R.id.iv_index_photo)
        RatioImageView mIvIndexPhoto;