xuxiuxi
2017-04-07 48d61aafa2551ae2ee0a9484b590d64e10baeae3
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.getName());
                fragment_visit_left_person_row_status.setText(item.getStatus());
                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;
        }
    }
}