package cn.com.basic.face.adapter; import android.content.Context; import android.net.Uri; import android.view.View; import android.view.ViewGroup; import android.widget.LinearLayout; import android.widget.RelativeLayout; import android.widget.TextView; import com.bsk.zhangbo.demoforbsk.R; import cn.com.basic.face.fragment.CheckInFragment; import cn.com.basic.face.util.AppApi; import cn.com.basic.face.util.Constant; import com.camnter.easyrecyclerview.adapter.EasyRecyclerViewAdapter; import com.camnter.easyrecyclerview.holder.EasyRecyclerViewHolder; import com.facebook.drawee.view.SimpleDraweeView; import java.util.List; import cn.com.basic.face.discern.query.item.VisitorQueryItem; /** * Created by Sinoe on 2017/2/23. */ public class VisitorRecyclerViewAdapter extends EasyRecyclerViewAdapter { private Context mContext; private int type, mTypeColor; private List list; private TextView mTvName, mTvDepartment; public static final int TYPE_NAME = 10000; public static final int TYPE_DEPARTMENT = 10001; private TextView mToNameTv; private TextView mToDepartmentTv; public VisitorRecyclerViewAdapter(Context mContext, int type) { this.mContext = mContext; this.type = type; } @Override public int[] getItemLayouts() { return new int[]{R.layout.item_visitor_from, R.layout.item_visitor_to}; } @Override public void onBindRecycleViewHolder(EasyRecyclerViewHolder viewHolder, int position) { switch (type) { case Constant.VISITOR_FROM: VisitorFromViewHolder(viewHolder, position); break; case Constant.VISITOR_TO: VisitorToViewHolder(viewHolder, position); break; } } @Override public int getRecycleViewItemType(int position) { switch (type) { case Constant.VISITOR_FROM: return 0; case Constant.VISITOR_TO: return 1; default: return 1; } } /** * 来访人Holder * * @param holder * @param posistion */ private void VisitorFromViewHolder(EasyRecyclerViewHolder holder, final int posistion) { LinearLayout mLayout = holder.findViewById(R.id.item_visitor_from_base); TextView nameTv = (TextView)mLayout.findViewById(R.id.item_visitor_name); SimpleDraweeView photoIv = (SimpleDraweeView) mLayout.findViewById(R.id.item_visitor_photo); RelativeLayout itemVisitorFromRl = (RelativeLayout)mLayout.findViewById(R.id.item_visitor_from_rl); itemVisitorFromRl.setOnClickListener(new View.OnClickListener(){ @Override public void onClick(View view) { Object data = getList().get(posistion); if (data instanceof VisitorQueryItem) { VisitorQueryItem item = (VisitorQueryItem) data; CheckInFragment.getInstance().setVisitorInfo(item); } } }); nameTv.setText(""); Object data = getList().get(posistion); if (data instanceof VisitorQueryItem) { VisitorQueryItem item = (VisitorQueryItem) data; nameTv.setText(item.getName()); photoIv.setImageURI(Uri.parse(AppApi.CHENXINGGROUND_IMAGEURL_BASE + item.getImagePath())); } ViewGroup.LayoutParams layoutParams = mLayout.getLayoutParams(); mLayout.setLayoutParams(layoutParams); } /** * 被访问Holder * * @param holder * @param posistion */ private void VisitorToViewHolder(EasyRecyclerViewHolder holder, final int posistion) { LinearLayout mLayout = holder.findViewById(R.id.item_visitor_to_base); mTvName = holder.findViewById(R.id.item_visitor_to_name); mToNameTv = (TextView) mTvName.findViewById(R.id.item_visitor_to_name); mToDepartmentTv = (TextView) mTvName.findViewById(R.id.item_visitor_to_department); mTvDepartment = holder.findViewById(R.id.item_visitor_to_department); SimpleDraweeView photoIv = (SimpleDraweeView) mLayout.findViewById(R.id.item_visitor_to_avatar); Object data = getList().get(posistion); if (data instanceof VisitorQueryItem) { VisitorQueryItem item = (VisitorQueryItem) data; mToNameTv.setText(item.getName()); mTvDepartment.setText(item.getDeptName()); photoIv.setImageURI(Uri.parse(AppApi.CHENXINGGROUND_IMAGEURL_BASE + item.getImagePath())); } RelativeLayout itemVisitorToRl = (RelativeLayout) holder.findViewById(R.id.item_visitor_to_rl); itemVisitorToRl.setOnClickListener(new View.OnClickListener(){ @Override public void onClick(View view) { Object data = getList().get(posistion); if (data instanceof VisitorQueryItem) { VisitorQueryItem item = (VisitorQueryItem) data; CheckInFragment.getInstance().setIntervieweeInfo(item); } } }); if (mTypeColor == TYPE_DEPARTMENT) { mTvName.setTextColor(mContext.getResources().getColor(R.color.colorText_b)); mTvDepartment.setTextColor(mContext.getResources().getColor(R.color.colorText_5)); } else { mTvName.setTextColor(mContext.getResources().getColor(R.color.colorText_5)); mTvDepartment.setTextColor(mContext.getResources().getColor(R.color.colorText_b)); } } public void setVisitorToColor(int type) { this.mTypeColor = type; } // public void setVisitorToTextColor(int type){ // switch (type){ // case TYPE_DEPARTMENT: // mTvName.setTextColor(mContext.getResources().getColor(R.color.colorText_b)); // mTvDepartment.setTextColor(mContext.getResources().getColor(R.color.colorText_5)); // notifyDataSetChanged(); // break; // case TYPE_NAME: // mTvName.setTextColor(mContext.getResources().getColor(R.color.colorText_5)); // mTvDepartment.setTextColor(mContext.getResources().getColor(R.color.colorText_b)); // notifyDataSetChanged(); // break; // } // } }