package cn.com.basic.face.adapter; import android.view.View; import android.widget.RadioButton; import android.widget.RelativeLayout; import android.widget.TextView; import com.bsk.zhangbo.demoforbsk.R; import com.camnter.easyrecyclerview.adapter.EasyRecyclerViewAdapter; import com.camnter.easyrecyclerview.holder.EasyRecyclerViewHolder; import com.facebook.drawee.view.SimpleDraweeView; import cn.com.basic.face.discern.common.CommonVariables; import cn.com.basic.face.discern.query.item.AttendanceDetailQueryItem; import cn.com.basic.face.discern.query.item.AttendanceQueryItem; import cn.com.basic.face.util.AppApi; public class AttendanceFragment { public static class AttendanceRightAdapter extends EasyRecyclerViewAdapter { @Override public int[] getItemLayouts() { return new int[]{R.layout.fragment_attendance_right_row}; } @Override public void onBindRecycleViewHolder(EasyRecyclerViewHolder viewHolder, int position) { AttendanceDetailQueryItem item = getItem(position); TextView fragment_attendance_right_row_num = viewHolder.findViewById(R.id.fragment_attendance_right_row_num); TextView fragment_attendance_right_row_time = viewHolder.findViewById(R.id.fragment_attendance_right_row_time); TextView fragment_attendance_right_row_address = viewHolder.findViewById(R.id.fragment_attendance_right_row_address); TextView fragment_attendance_right_row_status = viewHolder.findViewById(R.id.fragment_attendance_right_row_status); fragment_attendance_right_row_time.setText(item.getTime()); fragment_attendance_right_row_address.setText(item.getDeviceName()); fragment_attendance_right_row_status.setText(item.getAttendanceType()); fragment_attendance_right_row_num.setText((position+1)+""); } @Override public int getRecycleViewItemType(int position) { return 0; } } public static class AttendanceLeftAdapter extends EasyRecyclerViewAdapter { private int lastIndex = -1; private RadioButton lastRadioButton; @Override public int[] getItemLayouts() { return new int[]{R.layout.fragment_attendance_left_date_row, R.layout.fragment_attendance_left_person_row,R.layout.load_more, R.layout.no_more, R.layout.reach_bottom}; } @Override public void onBindRecycleViewHolder(EasyRecyclerViewHolder viewHolder, final int position) { if (getItem(position) instanceof Integer && ((int)getItem(position))== CommonVariables.Page.reachBottom) { return; } if (getItem(position) instanceof Integer && ((int)getItem(position))== CommonVariables.Page.noMorePage) { return; } if (getItem(position) instanceof Integer && ((int)getItem(position))== CommonVariables.Page.hasMorePages) { TextView load_more_text_view = viewHolder.findViewById(R.id.load_more_text_view); load_more_text_view.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { cn.com.basic.face.fragment.AttendanceFragment.getInstance().addPageNum(); cn.com.basic.face.fragment.AttendanceFragment.getInstance().append(); } }); return; } if(!(getItem(position) instanceof String)) { final RadioButton fragment_visit_left_person_row_check_box = viewHolder.findViewById(R.id.fragment_attendance_left_person_row_check_box); TextView fragment_visit_left_person_row_name = viewHolder.findViewById(R.id.fragment_attendance_left_person_row_name); SimpleDraweeView fragment_visit_left_person_row_photo = viewHolder.findViewById(R.id.fragment_attendance_left_person_row_photo); TextView fragment_visit_left_person_row_status = viewHolder.findViewById(R.id.fragment_attendance_left_person_row_status); RelativeLayout fragment_attendance_left_relative_layout = viewHolder.findViewById(R.id.fragment_attendance_left_relative_layout); final AttendanceQueryItem item = getItem(position); fragment_visit_left_person_row_status.setText(item.getAttendanceType()); fragment_attendance_left_relative_layout.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if (lastRadioButton != null && lastRadioButton != fragment_visit_left_person_row_check_box) { lastRadioButton.setChecked(false); } lastRadioButton = fragment_visit_left_person_row_check_box; cn.com.basic.face.fragment.AttendanceFragment.getInstance().setVisitorInfo(item); lastIndex = position; fragment_visit_left_person_row_check_box.setChecked(true); notifyDataSetChanged(); } }); fragment_visit_left_person_row_check_box.setChecked(false); if (lastIndex == position) { fragment_visit_left_person_row_check_box.setChecked(true); } fragment_visit_left_person_row_name.setText(item.getUsername()); //fragment_visit_left_person_row_status.setText(item.getStatus()); fragment_visit_left_person_row_photo.setImageURI(AppApi.IMAGE_URL_BASE +item.getSurveillancePhoto()); View fragment_visit_left_line = viewHolder.findViewById(R.id.fragment_attendance_left_line); fragment_visit_left_line.setVisibility(View.VISIBLE); if (position < (getListSize()-1) && (getItem(position+1) instanceof String)) { fragment_visit_left_line.setVisibility(View.GONE); } if (position == getListSize() - 1) { fragment_visit_left_line.setVisibility(View.GONE); } } else { TextView fragment_visit_left_date_row_date = viewHolder.findViewById(R.id.fragment_attendance_left_date_row_date); fragment_visit_left_date_row_date.setText(getItem(position)+""); } } @Override public int getRecycleViewItemType(int position) { if (getItem(position) instanceof Integer && ((int)getItem(position))== CommonVariables.Page.reachBottom) { return 4; } if (getItem(position) instanceof Integer && ((int)getItem(position))== CommonVariables.Page.noMorePage) { return 3; } if (getItem(position) instanceof Integer && ((int)getItem(position))== CommonVariables.Page.hasMorePages) { return 2; } if(!(getItem(position) instanceof String)) { return 1; } return 0; } } }