From d2f697fa887e28b86d38332e2fbde930c54fb43f Mon Sep 17 00:00:00 2001 From: xuxiuxi <xuxiuxi@454eff88-639b-444f-9e54-f578c98de674> Date: 星期四, 20 四月 2017 10:16:49 +0800 Subject: [PATCH] --- VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/adapter/CheckInFragment.java | 224 ++++++++++++++++++++++++++++++++----------------------- 1 files changed, 130 insertions(+), 94 deletions(-) diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/adapter/CheckInFragment.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/adapter/CheckInFragment.java index 3f6f628..6c88741 100644 --- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/adapter/CheckInFragment.java +++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/adapter/CheckInFragment.java @@ -1,6 +1,5 @@ package cn.com.basic.face.adapter; -import android.content.Context; import android.net.Uri; import android.view.View; import android.widget.LinearLayout; @@ -12,70 +11,46 @@ import com.camnter.easyrecyclerview.holder.EasyRecyclerViewHolder; import com.facebook.drawee.view.SimpleDraweeView; -import java.util.List; - +import cn.com.basic.face.base.MainActivity; +import cn.com.basic.face.discern.common.CommonVariables; import cn.com.basic.face.discern.query.item.CheckInQueryItem; import cn.com.basic.face.util.AppApi; -import cn.com.basic.face.util.Constant; public class CheckInFragment { - public static class CheckInLeftListViewAdapter extends EasyRecyclerViewAdapter { - private Context mContext; - private int type, mTypeColor; - private List list; - private TextView fragment_check_in_left_interviewee_row_name; - private TextView fragment_check_in_left_interviewee_row_dept; - private SimpleDraweeView fragment_check_in_left_interviewee_row_photo; - public static final int TYPE_NAME = 10000; - public static final int TYPE_DEPARTMENT = 10001; - - public CheckInLeftListViewAdapter(Context mContext, int type) { - this.mContext = mContext; - this.type = type; - } - - public CheckInLeftListViewAdapter(Context mContext) { - this.mContext = mContext; - } + public static class CheckInLeftVisitorAdapter extends EasyRecyclerViewAdapter { @Override public int[] getItemLayouts() { - return new int[]{R.layout.fragment_check_in_left_visitor_row, R.layout.fragment_check_in_left_interviewee_row}; + return new int[]{R.layout.fragment_check_in_left_visitor_row, R.layout.fragment_check_in_left_first_letter_row,R.layout.load_more, R.layout.no_more, R.layout.reach_bottom}; } @Override - public void onBindRecycleViewHolder(EasyRecyclerViewHolder viewHolder, int position) { - switch (type) { - case Constant.CheckIn.VISITOR_ROW: - visitorCellHolder(viewHolder, position); - break; - case Constant.CheckIn.INTERVIEWEE_ROW: - intervieweeCellHolder(viewHolder, position); - break; + public void onBindRecycleViewHolder(EasyRecyclerViewHolder viewHolder, final int position) { + if (getItem(position) instanceof Integer && ((int)getItem(position))== CommonVariables.Page.reachBottom) { + return; } - } - - @Override - public int getRecycleViewItemType(int position) { - switch (type) { - case Constant.CheckIn.VISITOR_ROW: - return 0; - case Constant.CheckIn.INTERVIEWEE_ROW: - return 1; - default: - return 1; + 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.CheckInFragment.getInstance().addPageNum(); + cn.com.basic.face.fragment.CheckInFragment.getInstance().append(); + } + }); + return; + } + if (!(getItem(position) instanceof CheckInQueryItem)) { + TextView fragment_phone_call_left_row_first_letter_name = viewHolder.findViewById(R.id.fragment_check_in_left_row_first_letter_name); + fragment_phone_call_left_row_first_letter_name.setText(getItem(position)+"".toUpperCase()); + return; + } - /** - * 鏉ヨ浜篐older - * - * @param holder - * @param posistion - */ - private void visitorCellHolder(EasyRecyclerViewHolder holder, final int posistion) { - LinearLayout fragment_check_in_left_visitor_row_linear_layout = holder.findViewById(R.id.fragment_check_in_left_visitor_row_linear_layout); + LinearLayout fragment_check_in_left_visitor_row_linear_layout = viewHolder.findViewById(R.id.fragment_check_in_left_visitor_row_linear_layout); TextView fragment_check_in_left_visitor_row_name = (TextView)fragment_check_in_left_visitor_row_linear_layout.findViewById(R.id.fragment_check_in_left_visitor_row_name); SimpleDraweeView fragment_check_in_left_visitor_row_photo = (SimpleDraweeView) fragment_check_in_left_visitor_row_linear_layout.findViewById(R.id.fragment_check_in_left_visitor_row_photo); @@ -85,7 +60,7 @@ fragment_check_in_left_visitor_row_relative_layout.setOnClickListener(new View.OnClickListener(){ @Override public void onClick(View view) { - Object data = getList().get(posistion); + Object data = getList().get(position); if (data instanceof CheckInQueryItem) { CheckInQueryItem item = (CheckInQueryItem) data; cn.com.basic.face.fragment.CheckInFragment.getInstance().getFragment_check_in_right_visitor_cell().setVisitorInfo(item); @@ -95,38 +70,98 @@ fragment_check_in_left_visitor_row_name.setText(""); - Object data = getList().get(posistion); + Object data = getList().get(position); if (data instanceof CheckInQueryItem) { CheckInQueryItem item = (CheckInQueryItem) data; - fragment_check_in_left_visitor_row_name.setText(item.getName()); - fragment_check_in_left_visitor_row_photo.setImageURI(Uri.parse(AppApi.IMAGEURL_BASE + item.getImagePath())); + fragment_check_in_left_visitor_row_name.setText(item.getUsername()); + if (item.getImagePath() != null && !item.getImagePath().equals("")) { + fragment_check_in_left_visitor_row_photo.setImageURI(Uri.parse(AppApi.IMAGE_URL_BASE + item.getImagePath())); + } else { + fragment_check_in_left_visitor_row_photo.setImageResource(R.drawable.u68); + } } - } - /** - * 琚闂瓾older - * - * @param holder - * @param posistion - */ - private void intervieweeCellHolder(EasyRecyclerViewHolder holder, final int posistion) { - fragment_check_in_left_interviewee_row_name = holder.findViewById(R.id.fragment_check_in_left_interviewee_row_name); - fragment_check_in_left_interviewee_row_dept = holder.findViewById(R.id.fragment_check_in_left_interviewee_row_dept); - fragment_check_in_left_interviewee_row_photo = holder.findViewById(R.id.fragment_check_in_left_interviewee_row_photo); + @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 CheckInQueryItem)) { + return 1; + } + return 0; + } - Object data = getList().get(posistion); - if (data instanceof CheckInQueryItem) { - CheckInQueryItem item = (CheckInQueryItem) data; - fragment_check_in_left_interviewee_row_name.setText(item.getName()); - fragment_check_in_left_interviewee_row_dept.setText(item.getDeptName()); - fragment_check_in_left_interviewee_row_photo.setImageURI(Uri.parse(AppApi.IMAGEURL_BASE + item.getImagePath())); + } + + public static class CheckInLeftIntervieweeAdapter extends EasyRecyclerViewAdapter { + + private boolean isSortByDept; + + @Override + public int[] getItemLayouts() { + return new int[]{R.layout.fragment_check_in_left_interviewee_row, R.layout.fragment_check_in_left_first_letter_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.CheckInFragment.getInstance().addPageNum(); + cn.com.basic.face.fragment.CheckInFragment.getInstance().append(); + } + }); + return; + } + if (!(getItem(position) instanceof CheckInQueryItem)) { + TextView fragment_phone_call_left_row_first_letter_name = viewHolder.findViewById(R.id.fragment_check_in_left_row_first_letter_name); + fragment_phone_call_left_row_first_letter_name.setText(getItem(position)+"".toUpperCase()); + return; + } + TextView fragment_check_in_left_interviewee_row_name = viewHolder.findViewById(R.id.fragment_check_in_left_interviewee_row_name); + TextView fragment_check_in_left_interviewee_row_dept = viewHolder.findViewById(R.id.fragment_check_in_left_interviewee_row_dept); + SimpleDraweeView fragment_check_in_left_interviewee_row_photo = viewHolder.findViewById(R.id.fragment_check_in_left_interviewee_row_photo); + + if (isSortByDept) { + fragment_check_in_left_interviewee_row_name.setTextColor(MainActivity.getInstance().getResources().getColor(R.color.colorText_b)); + fragment_check_in_left_interviewee_row_dept.setTextColor(MainActivity.getInstance().getResources().getColor(R.color.colorText_5)); + } else { + fragment_check_in_left_interviewee_row_name.setTextColor(MainActivity.getInstance().getResources().getColor(R.color.colorText_5)); + fragment_check_in_left_interviewee_row_dept.setTextColor(MainActivity.getInstance().getResources().getColor(R.color.colorText_b)); } - holder.findViewById(R.id.fragment_check_in_left_interviewee_row_relativeLayout).setOnClickListener(new View.OnClickListener(){ + Object data = getList().get(position); + if (data instanceof CheckInQueryItem) { + CheckInQueryItem item = (CheckInQueryItem) data; + fragment_check_in_left_interviewee_row_name.setText(item.getUsername()); + fragment_check_in_left_interviewee_row_dept.setText(item.getDeptName()); + if (item.getImagePath() != null && !item.getImagePath().equals("")) { + fragment_check_in_left_interviewee_row_photo.setImageURI(Uri.parse(AppApi.IMAGE_URL_BASE + item.getImagePath())); + } else { + fragment_check_in_left_interviewee_row_photo.setImageResource(R.drawable.u68); + } + } + + viewHolder.findViewById(R.id.fragment_check_in_left_interviewee_row_relativeLayout).setOnClickListener(new View.OnClickListener(){ @Override public void onClick(View view) { - Object data = getList().get(posistion); + Object data = getList().get(position); if (data instanceof CheckInQueryItem) { CheckInQueryItem item = (CheckInQueryItem) data; cn.com.basic.face.fragment.CheckInFragment.getInstance().getFragment_check_in_right_interviewee_cell().setIntervieweeInfo(item); @@ -134,30 +169,31 @@ } }); - if (mTypeColor == TYPE_DEPARTMENT) { - fragment_check_in_left_interviewee_row_name.setTextColor(mContext.getResources().getColor(R.color.colorText_b)); - fragment_check_in_left_interviewee_row_dept.setTextColor(mContext.getResources().getColor(R.color.colorText_5)); - } else { - fragment_check_in_left_interviewee_row_name.setTextColor(mContext.getResources().getColor(R.color.colorText_5)); - fragment_check_in_left_interviewee_row_dept.setTextColor(mContext.getResources().getColor(R.color.colorText_b)); + } + + @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 CheckInQueryItem)) { + return 1; + } + return 0; + } + + public void resetForm() { } - public void set_fragment_check_in_left_sort_radio_group_type(int type) { - this.mTypeColor = type; - } - - public void setVisitorRow() { - this.type = Constant.CheckIn.VISITOR_ROW; - } - - public void setIntervieweeRow() { - this.type = Constant.CheckIn.INTERVIEWEE_ROW; - } - - public void setRowType(int type) { - this.type = type; + public void setSortByDept(boolean isSortByDept) { + this.isSortByDept = isSortByDept; } } -- Gitblit v1.8.0