From 39b39504ac9844630777558843be7c13aff30dfa Mon Sep 17 00:00:00 2001
From: mac <user@users-MacBook-Pro.local>
Date: 星期三, 17 七月 2024 18:09:01 +0800
Subject: [PATCH] 2024年07月17日18:08:36

---
 app/src/main/java/com/hdl/photovoltaic/widget/ListDialog.java |   44 ++++++++++++++++++--------------------------
 1 files changed, 18 insertions(+), 26 deletions(-)

diff --git a/app/src/main/java/com/hdl/photovoltaic/widget/ListDialog.java b/app/src/main/java/com/hdl/photovoltaic/widget/ListDialog.java
index 6fe6789..8916d08 100644
--- a/app/src/main/java/com/hdl/photovoltaic/widget/ListDialog.java
+++ b/app/src/main/java/com/hdl/photovoltaic/widget/ListDialog.java
@@ -4,7 +4,11 @@
 import android.app.Dialog;
 import android.content.Context;
 import android.os.Bundle;
+import android.view.Gravity;
 import android.view.View;
+import android.view.ViewGroup;
+import android.view.Window;
+import android.view.WindowManager;
 
 import androidx.annotation.NonNull;
 import androidx.recyclerview.widget.LinearLayoutManager;
@@ -15,6 +19,7 @@
 import com.hdl.photovoltaic.databinding.DialogListBinding;
 import com.hdl.photovoltaic.ui.adapter.LanguageAdapter;
 import com.hdl.photovoltaic.utils.LocalManageUtil;
+import com.hdl.photovoltaic.utils.UnitConversionUtils;
 import com.hdl.photovoltaic.widget.adapter.ListDialogAdapter;
 
 import java.util.List;
@@ -41,9 +46,20 @@
     @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, 140);
+            layoutParams.x = (int) UnitConversionUtils.dpToPx(mContext, 20);
+            layoutParams.y = (int) UnitConversionUtils.dpToPx(mContext, 84);
+            window.setAttributes(layoutParams);
+        }
+
         viewBinding = DialogListBinding.inflate(getLayoutInflater());
         setContentView(viewBinding.getRoot());
-        setDialogTouchOutsideCloseable(this);
         initData();
         LinearLayoutManager linearLayout = new LinearLayoutManager(mContext);
         listDialogAdapter = new ListDialogAdapter(this.list, mContext);
@@ -92,9 +108,9 @@
     private void languageSelectionDialog(int position, LanguageAdapter.ItemData itemData) {
 
         ConfirmationCancelDialog dialog = new ConfirmationCancelDialog(this.mContext);
-        dialog.setTitle(this.mContext.getString(R.string.loading_title_tip));
         dialog.setContent(this.mContext.getString(R.string.loading_app_restart));
         dialog.show();
+        dialog.isHideTitle(true);
         dialog.setYesOnclickListener(new ConfirmationCancelDialog.onYesOnclickListener() {
             @Override
             public void Confirm() {
@@ -122,28 +138,4 @@
     }
 
 
-    @SuppressLint("ClickableViewAccessibility")
-    public void setDialogTouchOutsideCloseable(Dialog dialog) {
-        viewBinding.getRoot().setOnClickListener(new View.OnClickListener() {
-            @Override
-            public void onClick(View v) {
-                int top = viewBinding.dialogParent.getTop();
-                int left = viewBinding.dialogParent.getLeft();
-                int bottom = viewBinding.dialogParent.getBottom();
-                int right = viewBinding.dialogParent.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();
-                }
-
-            }
-        });
-    }
 }

--
Gitblit v1.8.0