From 109ffe9a777658936a38d0c146579a67c60a0d17 Mon Sep 17 00:00:00 2001 From: xuxiuxi <xuxiuxi@454eff88-639b-444f-9e54-f578c98de674> Date: 星期四, 11 五月 2017 17:48:48 +0800 Subject: [PATCH] --- VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/adapter/SurveillanceFragment.java | 48 +++++++++++++++++++++++++++++++++--------------- 1 files changed, 33 insertions(+), 15 deletions(-) diff --git a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/adapter/SurveillanceFragment.java b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/adapter/SurveillanceFragment.java index 221fdd8..b6c0be4 100644 --- a/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/adapter/SurveillanceFragment.java +++ b/VisitFace/DemoForBsk/app/src/main/java/cn/com/basic/face/adapter/SurveillanceFragment.java @@ -13,14 +13,15 @@ import com.camnter.easyrecyclerview.adapter.EasyRecyclerViewAdapter; import com.camnter.easyrecyclerview.holder.EasyRecyclerViewHolder; +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.discern.query.item.SurveillanceQueryItem; import cn.com.basic.face.fragment.*; import cn.com.basic.face.util.AppApi; -import cn.com.basic.face.util.BitmapUtil; import cn.com.basic.face.util.Constant; -import cn.com.basic.face.util.WindowsUtil; public class SurveillanceFragment { @@ -96,7 +97,7 @@ RegisterFragment.getInstance().setRegisterInfo(getVo(item));//java.lang.OutOfMemoryError: Failed to allocate a 25338980 byte allocation with 15827186 free bytes and 15MB until OOM if(item.getBitmap() != null) { RegisterFragment.getInstance().setChoosePhoto(item.getBitmap()); - RegisterFragment.getInstance().setSurveillanceQueryItem(item); + RegisterFragment.getInstance().setSurveillanceQueryItem_selectPhoto(item); } } }); @@ -259,10 +260,11 @@ public SurveillancePhotoSelectListViewAdapter(Context context) { this.context = context; } + public static int selectPhotoOrUploadPhoto; @Override public int[] getItemLayouts() { - return new int[]{R.layout.fragment_surveillance_photo_cell}; + return new int[]{R.layout.fragment_surveillance_photo_cell, R.layout.fragment_surveillance_photo_blank_cell}; } @Override @@ -272,24 +274,37 @@ layoutParams.height = (int)MainActivity.getInstance().getResources().getDimension(R.dimen.h127dp); layoutParams.width = (int)MainActivity.getInstance().getResources().getDimension(R.dimen.h122dp); mLayout.setLayoutParams(layoutParams); + if (((SurveillanceQueryItem)getList().get(position)).getRegisterOrCheckIn() != Constant.Surveillance.VISIT_REGISTER_ITEM_TYPE) { + return; + } ImageView fragment_surveillance_photo_cell_photo = (ImageView) mLayout.findViewById(R.id.fragment_surveillance_photo_cell_photo); - final View fragment_surveillance_photo_cell_select = (TextView) mLayout.findViewById(R.id.fragment_surveillance_photo_cell_select); + final View fragment_surveillance_photo_cell_select = mLayout.findViewById(R.id.fragment_surveillance_photo_cell_select); Object data = this.getItem(position); - - fragment_surveillance_photo_cell_photo.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - fragment_surveillance_photo_cell_select.setVisibility(fragment_surveillance_photo_cell_select.getVisibility() == View.VISIBLE - ? View.INVISIBLE : View.VISIBLE - ); - } - }); - if (data instanceof SurveillanceQueryItem) { final SurveillanceQueryItem item = (SurveillanceQueryItem)data; + fragment_surveillance_photo_cell_select.setVisibility(item.isSurveillancePhotoSelected() + ? View.VISIBLE : View.INVISIBLE + ); + + fragment_surveillance_photo_cell_photo.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + if (selectPhotoOrUploadPhoto == CommonVariables.SelectPhotoType.SELECT_PHOTO) { + RegisterFragment.getInstance().set_fragment_register_surveillance_photo(item); + } + if (selectPhotoOrUploadPhoto == CommonVariables.SelectPhotoType.UPLOAD_PHOTO) { + RegisterFragment.getInstance().set_fragment_register_upload_custom_photo(item); + } + for (SurveillanceQueryItem queryItem : (List<SurveillanceQueryItem>)getList()) { + queryItem.setSurveillancePhotoSelected(false); + } + item.setSurveillancePhotoSelected(true); + notifyDataSetChanged(); + } + }); if (item.getImagePath() != null && !item.getImagePath().equals("")) { fragment_surveillance_photo_cell_photo.setImageURI(Uri.parse(AppApi.IMAGE_URL_BASE +item.getImagePath())); @@ -305,6 +320,9 @@ @Override public int getRecycleViewItemType(int position) { + if (((SurveillanceQueryItem)getList().get(position)).getRegisterOrCheckIn() != Constant.Surveillance.VISIT_REGISTER_ITEM_TYPE) { + return 1; + } return 0; } -- Gitblit v1.8.0