From fae4c47aa2842f08294d0eaaf9aef4df4001c111 Mon Sep 17 00:00:00 2001 From: xuxiuxi <xuxiuxi@454eff88-639b-444f-9e54-f578c98de674> Date: 星期三, 12 四月 2017 11:42:38 +0800 Subject: [PATCH] --- VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/adapter/VisitFragment.java | 52 +++++++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 45 insertions(+), 7 deletions(-) diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/adapter/VisitFragment.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/adapter/VisitFragment.java index ca4ac78..410f5bc 100644 --- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/adapter/VisitFragment.java +++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/adapter/VisitFragment.java @@ -1,7 +1,8 @@ package cn.com.basic.face.adapter; -import android.widget.CheckBox; -import android.widget.CompoundButton; +import android.view.View; +import android.widget.RadioButton; +import android.widget.RelativeLayout; import android.widget.TextView; import com.bsk.zhangbo.demoforbsk.R; @@ -9,9 +10,15 @@ import com.camnter.easyrecyclerview.holder.EasyRecyclerViewHolder; import com.facebook.drawee.view.SimpleDraweeView; +import cn.com.basic.face.discern.query.item.VisitQueryItem; +import cn.com.basic.face.util.AppApi; + public class VisitFragment { public static class VisitLeftAdapter extends EasyRecyclerViewAdapter { + + private RadioButton lastRadioButton; + private int lastIndex = -1; @Override public int[] getItemLayouts() { @@ -19,20 +26,50 @@ } @Override - public void onBindRecycleViewHolder(EasyRecyclerViewHolder viewHolder, int position) { + public void onBindRecycleViewHolder(EasyRecyclerViewHolder viewHolder, final int position) { if(!(getItem(position) instanceof String)) { - final CheckBox fragment_visit_left_person_row_check_box = viewHolder.findViewById(R.id.fragment_visit_left_person_row_check_box); + final RadioButton fragment_visit_left_person_row_check_box = viewHolder.findViewById(R.id.fragment_visit_left_person_row_check_box); TextView fragment_visit_left_person_row_name = viewHolder.findViewById(R.id.fragment_visit_left_person_row_name); SimpleDraweeView fragment_visit_left_person_row_photo = viewHolder.findViewById(R.id.fragment_visit_left_person_row_photo); TextView fragment_visit_left_person_row_status = viewHolder.findViewById(R.id.fragment_visit_left_person_row_status); - fragment_visit_left_person_row_check_box.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { + final VisitQueryItem item = getItem(position); + RelativeLayout fragment_visit_left_relative_layout = viewHolder.findViewById(R.id.fragment_visit_left_relative_layout); + fragment_visit_left_relative_layout.setOnClickListener(new View.OnClickListener() { @Override - public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { + 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.VisitFragment.getInstance().setVisitInfo(item); + lastIndex = position; fragment_visit_left_person_row_check_box.setChecked(true); + notifyDataSetChanged(); } }); - } else { + 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(""); + fragment_visit_left_person_row_photo.setImageURI(AppApi.IMAGE_URL_BASE +item.getImagePath()); + + View fragment_visit_left_line = viewHolder.findViewById(R.id.fragment_visit_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_visit_left_date_row_date); + fragment_visit_left_date_row_date.setText(getItem(position)+""); } } @@ -43,5 +80,6 @@ } return 0; } + } } -- Gitblit v1.8.0