From b22eb8216e6f9b1c17eb12c2aa296ed5b6885e14 Mon Sep 17 00:00:00 2001
From: wjc <1243177876@qq.com>
Date: 星期三, 27 八月 2025 11:32:19 +0800
Subject: [PATCH] 2025年08月27日11:32:16
---
app/src/main/java/com/hdl/photovoltaic/widget/BTypeTitleListDialog.java | 70 +++++++++--------------------------
1 files changed, 18 insertions(+), 52 deletions(-)
diff --git a/app/src/main/java/com/hdl/photovoltaic/widget/BTypeTitleListDialog.java b/app/src/main/java/com/hdl/photovoltaic/widget/BTypeTitleListDialog.java
index 8668333..28d1d55 100644
--- a/app/src/main/java/com/hdl/photovoltaic/widget/BTypeTitleListDialog.java
+++ b/app/src/main/java/com/hdl/photovoltaic/widget/BTypeTitleListDialog.java
@@ -1,10 +1,11 @@
package com.hdl.photovoltaic.widget;
-import android.annotation.SuppressLint;
-import android.app.Dialog;
import android.content.Context;
import android.os.Bundle;
-import android.view.View;
+import android.view.Gravity;
+import android.view.ViewGroup;
+import android.view.Window;
+import android.view.WindowManager;
import androidx.annotation.NonNull;
import androidx.recyclerview.widget.LinearLayoutManager;
@@ -12,6 +13,7 @@
import com.hdl.photovoltaic.R;
import com.hdl.photovoltaic.base.BaseDialog;
import com.hdl.photovoltaic.databinding.DialogTypeTitleListBBinding;
+import com.hdl.photovoltaic.utils.UnitConversionUtils;
import com.hdl.photovoltaic.widget.adapter.TypeListDialogAdapter;
import java.util.List;
@@ -27,21 +29,30 @@
private List<String> mList;
- public BTypeTitleListDialog(@NonNull Context context, List<String> list,String selectType) {
+ public BTypeTitleListDialog(@NonNull Context context, List<String> list, String selectType) {
super(context, R.style.Custom_Dialog);
this.mContext = context;
this.mList = list;
- this.mSelectType=selectType;
+ this.mSelectType = selectType;
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
+ Window window = getWindow();
+ if (window != null) {
+ window.setLayout(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT);
+ WindowManager.LayoutParams layoutParams = window.getAttributes();
+ layoutParams.gravity = Gravity.START | Gravity.TOP;
+ layoutParams.width = (int) UnitConversionUtils.dpToPx(mContext, 375 - 32);
+ layoutParams.x = (int) UnitConversionUtils.dpToPx(mContext, 16);
+ layoutParams.y = (int) UnitConversionUtils.dpToPx(mContext, 137+44);
+ window.setAttributes(layoutParams);
+ }
viewBinding = DialogTypeTitleListBBinding.inflate(getLayoutInflater());
setContentView(viewBinding.getRoot());
- setDialogTouchOutsideCloseable(this);
LinearLayoutManager linearLayout = new LinearLayoutManager(mContext);
- typeListDialogAdapter = new TypeListDialogAdapter(this.mList, mContext,this.mSelectType);
+ typeListDialogAdapter = new TypeListDialogAdapter(this.mList, mContext, this.mSelectType);
viewBinding.typeListRl.setLayoutManager(linearLayout);
viewBinding.typeListRl.setAdapter(typeListDialogAdapter);
typeListDialogAdapter.setItemOnclickListener(new TypeListDialogAdapter.OnclickListener() {
@@ -58,54 +69,9 @@
@Override
protected void onStart() {
super.onStart();
-// // 鑾峰彇绐楀彛瀵硅薄
-// Window dialogWindow = this.getWindow();
-// if (dialogWindow != null) {
-// // 鑾峰彇瀵硅瘽妗嗗綋鍓嶇殑鍙傛暟鍊�
-// WindowManager.LayoutParams p = dialogWindow.getAttributes();
-// p.width = LinearLayout.LayoutParams.MATCH_PARENT;
-// p.height = LinearLayout.LayoutParams.WRAP_CONTENT;
-//// p.dimAmount = 0.6f;
-// dialogWindow.setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));
-// p.gravity = Gravity.BOTTOM;
-// p.y = DensityUtils.dip2px(mContext, 352);
-//// //杩欓噷璁剧疆鐨勫楂樹紭鍏堢骇楂樹簬XML涓殑甯冨眬璁剧疆
-//// if (this.enumBoxType == BoxType.PhotoAlbumBox) {
-//// p.gravity = Gravity.BOTTOM;
-//// } else if (this.enumBoxType == BoxType.FlashingBox) {
-//// p.dimAmount = 0f;
-//// }
-// // 璁剧疆鍒板睘鎬ч厤缃腑
-// dialogWindow.setAttributes(p);
-// }
-// setDialogTouchOutsideCloseable(this);
}
- @SuppressLint("ClickableViewAccessibility")
- public void setDialogTouchOutsideCloseable(Dialog dialog) {
- viewBinding.typeParentCl.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- int top = viewBinding.dialogParentCl.getTop();
- int left = viewBinding.dialogParentCl.getLeft();
- int bottom = viewBinding.dialogParentCl.getBottom();
- int right = viewBinding.dialogParentCl.getRight();
- int y = (int) v.getY();
- int x = (int) v.getX();
- if (top < y && y < bottom) {
- } else {
- dismiss();
- }
- if (left < x && x < right) {
-
- } else {
- dismiss();
- }
-
- }
- });
- }
public void setOnListener(OnClickListener onClickListener) {
this.mOnClickListener = onClickListener;
--
Gitblit v1.8.0