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.ImageView; import android.widget.RelativeLayout; import android.widget.TextView; import com.bsk.zhangbo.demoforbsk.R; import cn.com.basic.face.base.MainActivity; import cn.com.basic.face.fragment.CheckInFragment; import cn.com.basic.face.util.AppApi; import cn.com.basic.face.util.WindowsUtil; import com.camnter.easyrecyclerview.adapter.EasyRecyclerViewAdapter; import com.camnter.easyrecyclerview.holder.EasyRecyclerViewHolder; import java.util.List; import cn.com.basic.face.discern.query.item.FacePhotoItem; import cn.com.basic.face.discern.query.item.VisitorQueryItem; /** * Created by zhangbo on 2017/2/15. */ public class OneBottomRecylerViewAdapter extends EasyRecyclerViewAdapter { private int TYPE_1 = 0,TYPE_2 = 1; private int type; private Context context; private List list; public OneBottomRecylerViewAdapter(Context context) { this.context = context; } @Override public int[] getItemLayouts() { return new int[]{R.layout.item_visitor_registe,R.layout.item_visitor_user}; } @Override public void onBindRecycleViewHolder(EasyRecyclerViewHolder viewHolder, int position) { int recycleViewItemType = getRecycleViewItemType(position); switch (recycleViewItemType){ case 0: RegisterViewHolder(viewHolder,position); break; case 1: UserViewHolder(viewHolder,position); break; } } @Override public int getRecycleViewItemType(int position) { type = position%2; switch (type){ case 0: return TYPE_1; case 1: return TYPE_2; default: return TYPE_1; } } // @Override // public void onAttachedToRecyclerView(RecyclerView recyclerView) { // super.onAttachedToRecyclerView(recyclerView); // RecyclerView.LayoutManager manager = recyclerView.getLayoutManager(); // if (manager instanceof GridLayoutManager) { // final GridLayoutManager gridManager = ((GridLayoutManager) manager); // gridManager.setSpanSizeLookup(new GridLayoutManager.SpanSizeLookup() { // @Override // public int getSpanSize(int position) { // return getRecycleViewItemType(position) == BANNER_TYPE ? gridManager.getSpanCount() : 1; // } // }); // } // } /** * 第一列注册 * @param holder * @param posistion */ private void RegisterViewHolder(EasyRecyclerViewHolder holder,int posistion){ RelativeLayout mLayout = holder.findViewById(R.id.item_register_base); ViewGroup.LayoutParams layoutParams = mLayout.getLayoutParams(); layoutParams.height = WindowsUtil.dip2px(context, 127); layoutParams.width = WindowsUtil.dip2px(context, 104); mLayout.setLayoutParams(layoutParams); final Object data = this.getItem(posistion); ImageView photoIv = (ImageView) mLayout.findViewById(R.id.item_register_bcg); TextView toRegisterTv = (TextView) mLayout.findViewById(R.id.item_register_to_register); toRegisterTv.setOnClickListener(new View.OnClickListener(){ @Override public void onClick(View view) { MainActivity.selectPage(1); System.out.println(data.toString()); } }); // ImageView mSdv = holder.findViewById(R.id.item_register_bcg); // ViewGroup.LayoutParams mSdvLayoutParams = mSdv.getLayoutParams(); // mSdvLayoutParams.height = WindowsUtil.dip2px(context, 60); // mSdvLayoutParams.width = WindowsUtil.dip2px(context, 60); // mSdv.setLayoutParams(mSdvLayoutParams); } /** * 第二列用户情况 * @param holder * @param posistion */ private void UserViewHolder(EasyRecyclerViewHolder holder,int posistion){ RelativeLayout mLayout = holder.findViewById(R.id.item_user_base); ViewGroup.LayoutParams layoutParams = mLayout.getLayoutParams(); layoutParams.height = WindowsUtil.dip2px(context, 127); layoutParams.width = WindowsUtil.dip2px(context, 104); mLayout.setLayoutParams(layoutParams); ImageView photoIv = (ImageView) mLayout.findViewById(R.id.item_user_bcg); TextView warningTv = (TextView) mLayout.findViewById(R.id.item_user_warning); TextView nameTv = (TextView) mLayout.findViewById(R.id.item_user_name); TextView statusTv = (TextView) mLayout.findViewById(R.id.item_user_status); //statusTv.setText(""); Object data = this.getItem(posistion); if (data instanceof FacePhotoItem) { final FacePhotoItem item = (FacePhotoItem) data; if (item.getWarning().length() > 0 && "来访登记".equals(item.getStatus())) { //warningTv.setText("警告"); warningTv.setVisibility(View.VISIBLE); } else { warningTv.setVisibility(View.GONE); } nameTv.setText(item.getName()); statusTv.setText(item.getStatus()); if ("来访登记".equals(item.getStatus())) { statusTv.setBackground(context.getDrawable(R.drawable.rectangle_textview)); statusTv.setHeight((int)(context.getResources().getDisplayMetrics().density * 45)); statusTv.setOnClickListener(new View.OnClickListener(){ @Override public void onClick(View view) { MainActivity.selectPage(2); CheckInFragment.getInstance().visitorCheckIn(item); } }); } else { statusTv.setBackground(null); statusTv.setOnClickListener(null); } } nameTv.setText(""); if (data instanceof VisitorQueryItem) { final VisitorQueryItem item = (VisitorQueryItem)data; nameTv.setText(item.getName()); photoIv.setImageURI(Uri.parse(AppApi.CHENXINGGROUND_IMAGEURL_BASE+item.getImagePath())); if (1==1) { statusTv.setBackground(context.getDrawable(R.drawable.rectangle_textview)); statusTv.setHeight((int)(context.getResources().getDisplayMetrics().density * 45)); statusTv.setOnClickListener(new View.OnClickListener(){ @Override public void onClick(View view) { MainActivity.selectPage(2); CheckInFragment.getInstance().visitorCheckIn(item); } }); } } // ImageView mSdv = holder.findViewById(R.id.item_user_bcg); // ViewGroup.LayoutParams mSdvLayoutParams = mSdv.getLayoutParams(); // mSdvLayoutParams.height = WindowsUtil.dip2px(context, 60); // mSdvLayoutParams.width = WindowsUtil.dip2px(context, 60); // mSdv.setLayoutParams(mSdvLayoutParams); } }