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