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.fragment.RegisterFragment;
|
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.CheckInQueryItem;
|
|
/**
|
* Created by zhangbo on 2017/2/15.
|
*/
|
|
public class HomeAdapter extends EasyRecyclerViewAdapter {
|
private int TYPE_1 = 0,TYPE_2 = 1;
|
private int type;
|
private Context context;
|
private List list;
|
public HomeAdapter(Context context) {
|
this.context = context;
|
}
|
|
@Override
|
public int[] getItemLayouts() {
|
return new int[]{R.layout.fragment_home_bottom_register_cell,R.layout.fragment_home_bottom_visitor_cell};
|
}
|
|
@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;
|
}
|
}
|
|
/**
|
* 第一列注册
|
* @param holder
|
* @param posistion
|
*/
|
private void RegisterViewHolder(EasyRecyclerViewHolder holder,int posistion){
|
|
RelativeLayout mLayout = holder.findViewById(R.id.fragment_home_bottom_register_cell_relative_layout);
|
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 fragment_home_bottom_register_cell_photo = holder.findViewById(R.id.fragment_home_bottom_register_cell_photo);
|
TextView fragment_home_bottom_register_cell_to_register = holder.findViewById(R.id.fragment_home_bottom_register_cell_to_register);
|
|
if (data instanceof CheckInQueryItem) {
|
final CheckInQueryItem item = (CheckInQueryItem)data;
|
fragment_home_bottom_register_cell_photo.setImageURI(Uri.parse(AppApi.IMAGEURL_BASE +item.getImagePath()));
|
fragment_home_bottom_register_cell_to_register.setOnClickListener(new View.OnClickListener(){
|
@Override
|
public void onClick(View view) {
|
MainActivity.selectPage(1);
|
RegisterFragment.getInstance().setRegisterInfo(item);
|
}
|
});
|
}
|
}
|
|
|
/**
|
* 第二列用户情况
|
* @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 fragment_home_bottom_visitor_cell_photo = (ImageView) mLayout.findViewById(R.id.fragment_home_bottom_visitor_cell_photo);
|
TextView fragment_home_bottom_visitor_cell_warning = (TextView) mLayout.findViewById(R.id.fragment_home_bottom_visitor_cell_warning);
|
TextView fragment_home_bottom_visitor_cell_name = (TextView) mLayout.findViewById(R.id.fragment_home_bottom_visitor_cell_name);
|
TextView fragment_home_bottom_visitor_cell_status = (TextView) mLayout.findViewById(R.id.fragment_home_bottom_visitor_cell_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("警告");
|
fragment_home_bottom_visitor_cell_warning.setVisibility(View.VISIBLE);
|
} else {
|
fragment_home_bottom_visitor_cell_warning.setVisibility(View.GONE);
|
}
|
|
|
fragment_home_bottom_visitor_cell_name.setText(item.getName());
|
|
fragment_home_bottom_visitor_cell_status.setText(item.getStatus());
|
if ("来访登记".equals(item.getStatus())) {
|
fragment_home_bottom_visitor_cell_status.setBackground(context.getDrawable(R.drawable.rectangle_textview));
|
|
fragment_home_bottom_visitor_cell_status.setHeight((int)(context.getResources().getDisplayMetrics().density * 45));
|
fragment_home_bottom_visitor_cell_status.setOnClickListener(new View.OnClickListener(){
|
@Override
|
public void onClick(View view) {
|
MainActivity.selectPage(2);
|
}
|
});
|
} else {
|
fragment_home_bottom_visitor_cell_status.setBackground(null);
|
fragment_home_bottom_visitor_cell_status.setOnClickListener(null);
|
}
|
}
|
|
fragment_home_bottom_visitor_cell_name.setText("");
|
if (data instanceof CheckInQueryItem) {
|
final CheckInQueryItem item = (CheckInQueryItem)data;
|
fragment_home_bottom_visitor_cell_name.setText(item.getName());
|
fragment_home_bottom_visitor_cell_photo.setImageURI(Uri.parse(AppApi.IMAGEURL_BASE +item.getImagePath()));
|
if (1==1) {
|
fragment_home_bottom_visitor_cell_status.setBackground(context.getDrawable(R.drawable.rectangle_textview));
|
|
fragment_home_bottom_visitor_cell_status.setHeight((int)(context.getResources().getDisplayMetrics().density * 45));
|
fragment_home_bottom_visitor_cell_status.setOnClickListener(new View.OnClickListener(){
|
@Override
|
public void onClick(View view) {
|
MainActivity.selectPage(2);
|
CheckInFragment.getInstance().checkInFromHomePage(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);
|
}
|
}
|