From 814a2405f075573837f5f1aa296a0882c68385f2 Mon Sep 17 00:00:00 2001
From: wjc <1243177876@qq.com>
Date: 星期三, 28 六月 2023 18:56:43 +0800
Subject: [PATCH] 2023年06月28日18:56:38
---
app/src/main/java/com/hdl/photovoltaic/widget/ConfirmationInputDialog.java | 69 +++++++++++++++++++++++++++++++++-
1 files changed, 67 insertions(+), 2 deletions(-)
diff --git a/app/src/main/java/com/hdl/photovoltaic/widget/ConfirmationInputDialog.java b/app/src/main/java/com/hdl/photovoltaic/widget/ConfirmationInputDialog.java
index b117d45..d57aef4 100644
--- a/app/src/main/java/com/hdl/photovoltaic/widget/ConfirmationInputDialog.java
+++ b/app/src/main/java/com/hdl/photovoltaic/widget/ConfirmationInputDialog.java
@@ -1,5 +1,6 @@
package com.hdl.photovoltaic.widget;
+import android.app.Activity;
import android.app.Dialog;
import android.content.Context;
import android.os.Bundle;
@@ -10,9 +11,11 @@
import androidx.annotation.NonNull;
import androidx.appcompat.content.res.AppCompatResources;
+import androidx.constraintlayout.widget.ConstraintSet;
import com.hdl.photovoltaic.R;
import com.hdl.photovoltaic.databinding.LoadingConfirmInputBinding;
+import com.hdl.photovoltaic.utils.KeyboardStateObserverUtils;
/**
* 杈撳叆纭妗�
@@ -20,7 +23,7 @@
public class ConfirmationInputDialog extends Dialog {
public ConfirmationInputDialog(@NonNull Context context) {
- super(context, R.style.Custom_AlertDialog);
+ super(context, R.style.Custom_Dialog);
this.mContext = context;
}
@@ -29,7 +32,6 @@
private onYesOnclickListener yesOnclickListener;//纭畾鎸夐挳琚偣鍑讳簡鐨勭洃鍚櫒
private LoadingConfirmInputBinding viewBinding;
private String titleStr, yesStr, noStr;
-
@Override
protected void onCreate(Bundle savedInstanceState) {
@@ -45,6 +47,37 @@
initData();
//鍒濆鍖栫晫闈㈡帶浠剁殑浜嬩欢
initEvent();
+ //鍦ㄧ晫闈腑浣跨敤
+ KeyboardStateObserverUtils.getKeyboardStateObserver((Activity) mContext).setKeyboardVisibilityListener(new KeyboardStateObserverUtils.OnKeyboardVisibilityListener() {
+ @Override
+ public void onKeyboardShow(int h) {
+ ConstraintSet cs = new ConstraintSet();
+ cs.clone(viewBinding.loadingParentCl);
+// (viewBinding.loadingConfirmationRl.getTop()-dip2px(h))
+
+ cs.connect(R.id.loading_confirmation_rl, ConstraintSet.BOTTOM, ConstraintSet.PARENT_ID, ConstraintSet.BOTTOM, px2dip(h));//
+ //搴旂敤绾︽潫
+ cs.applyTo(viewBinding.loadingParentCl);
+
+
+// FrameLayout.LayoutParams lp = (FrameLayout.LayoutParams) viewBinding.loadingParentCl.getLayoutParams();
+// lp.bottomMargin = px2dip(h);
+// viewBinding.loadingParentCl.setLayoutParams(lp);
+
+
+ }
+
+ @Override
+
+ public void onKeyboardHide(int h) {
+ ConstraintSet cs = new ConstraintSet();
+ cs.clone(viewBinding.loadingParentCl);
+ cs.connect(R.id.loading_confirmation_rl, ConstraintSet.BOTTOM, ConstraintSet.PARENT_ID, ConstraintSet.BOTTOM, px2dip(h));//
+ //搴旂敤绾︽潫
+ cs.applyTo(viewBinding.loadingParentCl);
+ }
+
+ });
}
@@ -59,6 +92,9 @@
return;
}
titleStr = title;
+ if (viewBinding != null) {
+ viewBinding.loadingConfirmationTitleTv.setText(titleStr);
+ }
}
@@ -72,6 +108,10 @@
return;
}
yesStr = confirm;
+
+ if (viewBinding != null) {
+ viewBinding.dialogConfirmTv.setText(yesStr);
+ }
}
@@ -87,6 +127,9 @@
}
noStr = cancel;
+ if (viewBinding != null) {
+ viewBinding.dialogCancelTv.setText(noStr);
+ }
}
@@ -132,6 +175,9 @@
* 鍒濆鍖栫晫闈㈡帶浠剁殑鏄剧ず鏁版嵁
*/
private void initData() {
+ if (viewBinding == null) {
+ return;
+ }
//濡傛灉鐢ㄦ埛鑷畾浜唗itle鍜宮essage
if (!TextUtils.isEmpty(titleStr)) {
viewBinding.loadingConfirmationTitleTv.setText(titleStr);
@@ -183,4 +229,23 @@
void Confirm(String str);
}
+ /**
+ * 鏍规嵁鎵嬫満鐨勫垎杈ㄧ巼浠� dp 鐨勫崟浣� 杞垚涓� px(鍍忕礌)
+ */
+ private int dip2px(float dpValue) {
+ if (mContext == null) {
+ return 0;
+ }
+ final float scale = mContext.getResources().getDisplayMetrics().density;
+ return (int) (dpValue * scale + 0.5f);
+ }
+
+ /**
+ * 鏍规嵁鎵嬫満鐨勫垎杈ㄧ巼浠� px(鍍忕礌) 鐨勫崟浣� 杞垚涓� dp
+ */
+ private int px2dip(float pxValue) {
+ final float scale = mContext.getResources().getDisplayMetrics().density;
+ return (int) (pxValue / scale + 0.5f);
+ }
+
}
--
Gitblit v1.8.0