diff --git a/app/src/main/java/com/yingmao/clash/act/NewMainActivity.kt b/app/src/main/java/com/yingmao/clash/act/NewMainActivity.kt index 14b696c..27f6610 100644 --- a/app/src/main/java/com/yingmao/clash/act/NewMainActivity.kt +++ b/app/src/main/java/com/yingmao/clash/act/NewMainActivity.kt @@ -565,20 +565,22 @@ class NewMainActivity : BaseActivity() { if (data.data.data != null) { if (data.data.data.list.isNotEmpty()) { data.data.data.list[0].redirectLink.let { - activityDialog = - ActivityViewDialog(this, data.data.data.list[0].redirectLink) - activityDialog?.showDialog() - activityDialog?.setOnDialogClickListener(object : - OnDialogClickListener { - override fun onRechargeClickListener() { - //跳转到支付界面 - goBackupRechargeWeb() - } + if(activityDialog==null){ + activityDialog = + ActivityViewDialog(this, data.data.data.list[0].redirectLink) + activityDialog?.setOnDialogClickListener(object : + OnDialogClickListener { + override fun onRechargeClickListener() { + //跳转到支付界面 + goBackupRechargeWeb() + } - override fun onCancelClickListener() { - activityDialog?.dismiss() - } - }) + override fun onCancelClickListener() { + activityDialog?.dismiss() + } + }) + activityDialog?.show() + } } } } @@ -1207,6 +1209,12 @@ class NewMainActivity : BaseActivity() { } override fun onDestroy() { + if (activityDialog != null) { + if(activityDialog!!.isShowing){ + activityDialog!!.dismiss() + } + + } super.onDestroy() stopUploadTimer() mainAtyVM.stopHeartBeat() diff --git a/app/src/main/java/com/yingmao/clash/act/UIMainActivity.kt b/app/src/main/java/com/yingmao/clash/act/UIMainActivity.kt index d2189f5..43aa0d4 100644 --- a/app/src/main/java/com/yingmao/clash/act/UIMainActivity.kt +++ b/app/src/main/java/com/yingmao/clash/act/UIMainActivity.kt @@ -230,20 +230,22 @@ class UIMainActivity : BaseActivity() { if (data.code == 200) { if (data.data.data.list.isNotEmpty()) { data.data.data.list[0].redirectLink.let { - activityDialog = - ActivityViewDialog(this, data.data.data.list[0].redirectLink) - activityDialog?.showDialog() - activityDialog?.setOnDialogClickListener(object : - OnDialogClickListener { - override fun onRechargeClickListener() { - //跳转到支付界面 - goBackupRechargeWeb() - } + if(activityDialog==null){ + activityDialog = + ActivityViewDialog(this, data.data.data.list[0].redirectLink) + activityDialog?.setOnDialogClickListener(object : + OnDialogClickListener { + override fun onRechargeClickListener() { + //跳转到支付界面 + goBackupRechargeWeb() + } - override fun onCancelClickListener() { - activityDialog?.dismiss() - } - }) + override fun onCancelClickListener() { + activityDialog?.dismiss() + } + }) + activityDialog?.show() + } } } } @@ -556,6 +558,12 @@ class UIMainActivity : BaseActivity() { } override fun onDestroy() { + if (activityDialog != null) { + if(activityDialog!!.isShowing){ + activityDialog!!.dismiss() + } + + } super.onDestroy() stopUploadTimer() mainAtyVM.stopHeartBeat() diff --git a/app/src/main/java/com/yingmao/clash/view/dialog/ActivityViewDialog.java b/app/src/main/java/com/yingmao/clash/view/dialog/ActivityViewDialog.java index 0c9e3f9..225ca3d 100644 --- a/app/src/main/java/com/yingmao/clash/view/dialog/ActivityViewDialog.java +++ b/app/src/main/java/com/yingmao/clash/view/dialog/ActivityViewDialog.java @@ -20,17 +20,12 @@ public class ActivityViewDialog extends Dialog { public ActivityViewDialog(Context context,String path) { super(context); - setContentView(R.layout.activity_dialog_view_layout); - //设置点击布局外则Dialog消失 - setCanceledOnTouchOutside(false); - ImageView ivActivityImg =findViewById(R.id.ivActivityImg); - Glide.with(context) - .load(path) -// .error(R.drawable.ic_activity_bg) - .diskCacheStrategy(DiskCacheStrategy.DATA)//仅仅只缓存原来的全分辨率的图像 - .into(ivActivityImg); + initDialog(); + viewInit(context,path); } - public void showDialog() { + public void initDialog() { + setContentView(R.layout.activity_dialog_view_layout); + setCanceledOnTouchOutside(true); Window window = getWindow(); //设置弹窗动画 assert window != null; @@ -41,11 +36,16 @@ public class ActivityViewDialog extends Dialog { //设置弹窗位置 wl.gravity = Gravity.CENTER; window.setAttributes(wl); - show(); - initListener(); } - private void initListener() { + private void viewInit(Context context,String path) { + ImageView ivActivityImg =findViewById(R.id.ivActivityImg); + Glide.with(context) + .load(path) +// .error(R.drawable.ic_activity_bg) + .diskCacheStrategy(DiskCacheStrategy.DATA)//仅仅只缓存原来的全分辨率的图像 + .into(ivActivityImg); + ImageView icActivityClose=findViewById(R.id.icActivityClose); AppCompatButton abRecharge=findViewById(R.id.abRecharge); icActivityClose.setOnClickListener(v -> { diff --git a/app/src/main/res/layout/activity_dialog_view_layout.xml b/app/src/main/res/layout/activity_dialog_view_layout.xml index 46008c0..9127212 100644 --- a/app/src/main/res/layout/activity_dialog_view_layout.xml +++ b/app/src/main/res/layout/activity_dialog_view_layout.xml @@ -7,7 +7,6 @@ \ No newline at end of file