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