package com.android.chmo.ui.adpater; import android.app.Activity; import android.content.Context; import android.content.Intent; import android.support.annotation.NonNull; import android.support.v7.widget.RecyclerView; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.TextView; import com.android.chmo.R; import com.android.chmo.http.HttpApi; import com.android.chmo.http.RequestCallback; import com.android.chmo.http.response.ModelListRes; import com.android.chmo.http.service.ModelService; import com.android.chmo.model.MemberInfo; import com.android.chmo.model.ModelInfo; import com.android.chmo.ui.activity.model.ModelDetailActivity; import com.android.chmo.ui.view.RoundImageView; import com.android.chmo.utils.XUtilsImage; import com.google.gson.Gson; import java.util.List; import butterknife.BindView; import butterknife.ButterKnife; public class FansAdapter extends RecyclerView.Adapter { private Context context; private List data; public FansAdapter(Context context, List data) { this.context = context; this.data = data; } @NonNull @Override public FansHolder onCreateViewHolder(@NonNull ViewGroup viewGroup, int i) { return new FansHolder(LayoutInflater.from(context).inflate(R.layout.list_fans, viewGroup, false)); } @Override public void onBindViewHolder(@NonNull FansHolder fansHolder, int i) { MemberInfo info = data.get(i); XUtilsImage.display(fansHolder.ivAvatar, HttpApi.getImgUrl(data.get(i).hPhoto)); fansHolder.tvName.setText(data.get(i).Pet); boolean isModel = "7".equals(info.MembType); if (isModel) { fansHolder.tvModel.setVisibility(View.VISIBLE); fansHolder.itemView.setOnClickListener(v -> ModelService.getModelInfoByMemberPK(info.PK, new RequestCallback() { @Override public void onSuccess(String result) { ModelListRes res = new Gson().fromJson(result, ModelListRes.class); if (res.data != null && res.data.size() > 0) { ModelInfo model = res.data.get(0); Intent intent = new Intent(context, ModelDetailActivity.class); intent.putExtra("model", model); intent.putExtra("modelPk", model.modelpk); context.startActivity(intent); } } @Override public void onFailure(String error) { } })); } else { fansHolder.tvModel.setVisibility(View.GONE); fansHolder.itemView.setOnClickListener(null); } } @Override public int getItemCount() { return data.size(); } class FansHolder extends RecyclerView.ViewHolder { @BindView(R.id.iv_avatar) RoundImageView ivAvatar; @BindView(R.id.tv_name) TextView tvName; @BindView(R.id.tv_model) TextView tvModel; public FansHolder(@NonNull View itemView) { super(itemView); ButterKnife.bind(this, itemView); } } }