| | |
| | | |
| | | import com.basic.security.activity.MainActivity; |
| | | import com.basic.security.base.BaseApplication; |
| | | import com.basic.security.fragment.DoorAccessResultFragment; |
| | | import com.basic.security.manager.FaceTitleAndTipsManager; |
| | | import com.basic.security.manager.HintDoorAccessManager; |
| | | import com.basic.security.manager.HintSignUpManager; |
| | |
| | | |
| | | public class RecognizeFaceInfoView extends FrameLayout { |
| | | LinearLayout recognized_face_info_view_layout; |
| | | MyTextView face_title, tipsTxt; |
| | | MyTextView face_title, tipsTxt, face_title_top; |
| | | FaceOuterBorderView face_border; |
| | | BaseShapeView scanner_view; |
| | | TextView face_background; |
| | |
| | | initView(); |
| | | } |
| | | |
| | | public void setMeasuredDimension1(int measuredWidth, int measuredHeight) { |
| | | setMeasuredDimension(measuredWidth, measuredHeight); |
| | | } |
| | | |
| | | @Override |
| | | protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { |
| | | super.onMeasure(widthMeasureSpec, heightMeasureSpec); |
| | | } |
| | | |
| | | @Override |
| | | protected void onLayout(boolean changed, int left, int top, int right, int bottom) { |
| | | super.onLayout(changed, left, top, right, bottom); |
| | | } |
| | | |
| | | private void initView() { |
| | | View view = inflate(getContext(), com.basic.security.utils.ResolutionAdaptation.recognized_face_info_view(), null); |
| | | recognized_face_info_view_layout = view.findViewById(com.basic.security.utils.RUtils.R_id_recognized_face_info_view_layout); |
| | | face_title_top = view.findViewById(com.basic.security.utils.RUtils.R_id_face_title_top); |
| | | face_title = view.findViewById(com.basic.security.utils.RUtils.R_id_face_title); |
| | | tipsTxt = view.findViewById(com.basic.security.utils.RUtils.R_id_tipsTxt); |
| | | scanner_view = view.findViewById(com.basic.security.utils.RUtils.R_id_scanner_view); |
| | |
| | | face_title.setTextColor(Color.GREEN); |
| | | face_border.setBorderColor(Color.GREEN); |
| | | if (CurrentBase.activity.currentFragment == CurrentBase.activity.fragment_door_access_result) { |
| | | if ("开门成功".equals(((DoorAccessResultFragment) CurrentBase.activity.fragment_door_access_result).openDoorTitle())) { |
| | | if ("开门成功".equals((CurrentBase.activity.fragment_door_access_result).openDoorTitle())) { |
| | | face_title.setTextColor1(Color.parseColor("#00FF00")); |
| | | face_border.setBorderColor1(Color.parseColor("#00FF00")); |
| | | } else { |
| | |
| | | face_title.setText(HintDoorAccessManager.getNoRegisterHint()); |
| | | } |
| | | } |
| | | if (faceTitle.equals(HintSignUpManager.getAdminLogoutHint())) { |
| | | face_title.setTextColor1(Color.RED); |
| | | face_border.setBorderColor1(Color.RED); |
| | | } |
| | | if (faceTitleAndTips.facePosition != null && Constants.USE_GRAY_CAMERA && !facePosition.liveness) { |
| | | face_title.setTextColor1(Color.RED); |
| | | face_border.setBorderColor1(Color.RED); |
| | |
| | | } |
| | | } |
| | | float faceHeight = (facePosition.sy2 - facePosition.sy1) * (cameraViewHeight / pictureHeight); |
| | | RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams((int) faceWidth, (int) faceHeight); |
| | | RelativeLayout.LayoutParams layoutParams = null; |
| | | if (scanner_view instanceof CircleView) { |
| | | double face_title_top_height = (faceHeight - faceWidth) * 0.5; |
| | | if (face_title_top_height < 0) { |
| | | face_title_top_height = 0; |
| | | } |
| | | |
| | | face_title_top.setVisibility(VISIBLE); |
| | | ViewGroup.LayoutParams layoutParams3 = face_title_top.getLayoutParams(); |
| | | layoutParams3.height = (int) (face_title_top_height / 2); |
| | | face_title_top.setLayoutParams(layoutParams3); |
| | | double newFaceHeight = faceHeight - face_title_top_height; |
| | | layoutParams = new RelativeLayout.LayoutParams((int) faceWidth, (int) newFaceHeight); |
| | | } else { |
| | | layoutParams = new RelativeLayout.LayoutParams((int) faceWidth, (int) faceHeight); |
| | | } |
| | | |
| | | RelativeLayout.LayoutParams layoutParams1 = |
| | | new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT); |
| | | layoutParams1.setMargins((int) faceLeft, (int) (top), 0, 0); |
| | | recognized_face_info_view_layout.setLayoutParams(layoutParams1); |
| | | face_border.setLineLong((int) (Math.min(faceWidth, faceHeight) * 0.3)); |
| | | // 返回已注册,未注册 |
| | | // face_border.setLiveness(facePosition.liveness); |
| | | face_border.setLayoutParams(layoutParams); |
| | | scanner_view.setLayoutParams(layoutParams); |
| | | face_background.setLayoutParams(layoutParams); |