From 87cd5df70918e6ba1af849c5f026d3719bfdb1ac Mon Sep 17 00:00:00 2001 From: wjc <1243177876@qq.com> Date: 星期三, 09 四月 2025 09:06:29 +0800 Subject: [PATCH] Merge branch '1.5.2' into dev --- app/src/main/java/com/hdl/photovoltaic/widget/ConfirmationInputDialog.java | 109 +++++++++++++++++++++++++++++++++++++++--------------- 1 files changed, 79 insertions(+), 30 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 2c81d80..b4834a7 100644 --- a/app/src/main/java/com/hdl/photovoltaic/widget/ConfirmationInputDialog.java +++ b/app/src/main/java/com/hdl/photovoltaic/widget/ConfirmationInputDialog.java @@ -14,30 +14,30 @@ import androidx.constraintlayout.widget.ConstraintSet; import com.hdl.photovoltaic.R; -import com.hdl.photovoltaic.databinding.LoadingConfirmInputBinding; +import com.hdl.photovoltaic.base.BaseDialog; +import com.hdl.photovoltaic.databinding.DialogConfirmInputBinding; import com.hdl.photovoltaic.utils.KeyboardStateObserverUtils; /** * 杈撳叆纭妗� */ -public class ConfirmationInputDialog extends Dialog { +public class ConfirmationInputDialog extends BaseDialog { public ConfirmationInputDialog(@NonNull Context context) { - super(context, R.style.Custom_AlertDialog); + super(context, R.style.Custom_Dialog); this.mContext = context; } private final Context mContext; private onNoOnclickListener noOnclickListener;//鍙栨秷鎸夐挳琚偣鍑讳簡鐨勭洃鍚櫒 private onYesOnclickListener yesOnclickListener;//纭畾鎸夐挳琚偣鍑讳簡鐨勭洃鍚櫒 - private LoadingConfirmInputBinding viewBinding; - private String titleStr, yesStr, noStr; - + private DialogConfirmInputBinding viewBinding; + private String titleStr, yesStr, noStr,edit_content; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); - viewBinding = LoadingConfirmInputBinding.inflate(getLayoutInflater()); + viewBinding = DialogConfirmInputBinding.inflate(getLayoutInflater()); setContentView(viewBinding.getRoot()); // setCancelable(true);//绯荤粺鍚庨��鍙互鍙栨秷 //绌虹櫧澶勪笉鑳藉彇娑堝姩鐢� @@ -48,26 +48,34 @@ initData(); //鍒濆鍖栫晫闈㈡帶浠剁殑浜嬩欢 initEvent(); - - ///**/鍦ㄧ晫闈腑浣跨敤锛� + //鍦ㄧ晫闈腑浣跨敤 KeyboardStateObserverUtils.getKeyboardStateObserver((Activity) mContext).setKeyboardVisibilityListener(new KeyboardStateObserverUtils.OnKeyboardVisibilityListener() { @Override - - public void onKeyboardShow() { - //Toast.makeText(MainActivity.this,"閿洏寮瑰嚭",Toast.LENGTH_SHORT).show(); + public void onKeyboardShow(int h) { ConstraintSet cs = new ConstraintSet(); - cs.connect(R.id.loading_confirmation_rl, ConstraintSet.TOP, ConstraintSet.PARENT_ID, ConstraintSet.TOP, 40);// + 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.contentBaseView); -// viewBinding.agreementLl.setVisibility(View.GONE); + cs.applyTo(viewBinding.loadingParentCl); + + +// FrameLayout.LayoutParams lp = (FrameLayout.LayoutParams) viewBinding.loadingParentCl.getLayoutParams(); +// lp.bottomMargin = px2dip(h); +// viewBinding.loadingParentCl.setLayoutParams(lp); + + } @Override - public void onKeyboardHide() { - //Toast.makeText(MainActivity.this,"閿洏鏀跺洖",Toast.LENGTH_SHORT).show(); + public void onKeyboardHide(int h) { ConstraintSet cs = new ConstraintSet(); - cs.connect(R.id.loading_confirmation_rl, ConstraintSet.TOP, ConstraintSet.PARENT_ID, ConstraintSet.TOP, 40);// + cs.clone(viewBinding.loadingParentCl); + cs.connect(R.id.loading_confirmation_rl, ConstraintSet.BOTTOM, ConstraintSet.PARENT_ID, ConstraintSet.BOTTOM, px2dip(h));// + //搴旂敤绾︽潫 + cs.applyTo(viewBinding.loadingParentCl); } }); @@ -85,6 +93,25 @@ return; } titleStr = title; + if (viewBinding != null) { + viewBinding.loadingConfirmationTitleTv.setText(titleStr); + } + + } + + /** + * 杈撳叆妗嗗唴瀹� + * + * @param edit_content 杈撳叆妗嗗唴瀹� + */ + public void setEditContent(String edit_content) { + if (TextUtils.isEmpty(edit_content)) { + return; + } + this.edit_content = edit_content; + if (viewBinding != null) { + viewBinding.loadingConfirmationInputEt.setText(edit_content); + } } @@ -98,6 +125,10 @@ return; } yesStr = confirm; + + if (viewBinding != null) { + viewBinding.dialogConfirmTv.setText(yesStr); + } } @@ -113,6 +144,9 @@ } noStr = cancel; + if (viewBinding != null) { + viewBinding.dialogCancelTv.setText(noStr); + } } @@ -134,21 +168,11 @@ } }); - viewBinding.loadingConfirmationClickTv.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { - v.setSelected(!v.isSelected()); - if (v.isSelected()) { - viewBinding.loadingConfirmationInputEt.setTransformationMethod(HideReturnsTransformationMethod.getInstance()); - viewBinding.loadingConfirmationHideIv.setImageDrawable(AppCompatResources.getDrawable(mContext, R.drawable.show)); - } else { - viewBinding.loadingConfirmationInputEt.setTransformationMethod(PasswordTransformationMethod.getInstance()); - viewBinding.loadingConfirmationHideIv.setImageDrawable(AppCompatResources.getDrawable(mContext, R.drawable.hide)); - } - //璁剧疆鍏夋爣浣嶇疆 - viewBinding.loadingConfirmationInputEt.setSelection(viewBinding.loadingConfirmationInputEt.getText().length()); - + //涓�閿竻绌烘枃鏈� + viewBinding.loadingConfirmationInputEt.setText(""); } }); } @@ -158,6 +182,9 @@ * 鍒濆鍖栫晫闈㈡帶浠剁殑鏄剧ず鏁版嵁 */ private void initData() { + if (viewBinding == null) { + return; + } //濡傛灉鐢ㄦ埛鑷畾浜唗itle鍜宮essage if (!TextUtils.isEmpty(titleStr)) { viewBinding.loadingConfirmationTitleTv.setText(titleStr); @@ -168,6 +195,9 @@ } if (!TextUtils.isEmpty(noStr)) { viewBinding.dialogCancelTv.setText(noStr); + } + if (!TextUtils.isEmpty(edit_content)) { + viewBinding.loadingConfirmationInputEt.setText(edit_content); } } @@ -209,4 +239,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