From 9e5babf9db52e64bdae60137be7696e56241fca6 Mon Sep 17 00:00:00 2001
From: xingzilong <xingzilong@454eff88-639b-444f-9e54-f578c98de674>
Date: 星期五, 18 八月 2017 18:12:17 +0800
Subject: [PATCH] H264 NALU解析  并在RTSPServer判断

---
 VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/adapter/AttendanceFragment.java |  105 +++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 102 insertions(+), 3 deletions(-)

diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/adapter/AttendanceFragment.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/adapter/AttendanceFragment.java
index 50c86ef..98a1376 100644
--- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/adapter/AttendanceFragment.java
+++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/adapter/AttendanceFragment.java
@@ -1,10 +1,19 @@
 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 {
 
@@ -16,6 +25,17 @@
 
         @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
@@ -26,19 +46,98 @@
 
     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};
+            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, int position) {
+        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_visit_left_person_row_status.setVisibility(View.GONE);
+
+                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 (position % 3 == 0) {
+            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;

--
Gitblit v1.8.0