kongzue / DialogX

💬 DialogX dialog box component library, easy to use, more customizable, more scalable, easy to achieve a variety of dialog boxes. DialogX对话框组件库,更加方便易用,可自定义程度更高,扩展性更强,轻松实现各种对话框、菜单和提示效果,更有Material You、iOS、MIUI等主题扩展可选
Apache License 2.0
2.09k stars 217 forks source link

MessageDialog遮罩颜色设置问题 #451

Closed dengzibo504 closed 5 months ago

dengzibo504 commented 5 months ago

问题描述

我就想要个深一点的遮罩颜色,设置了boxRoot和bkg的颜色,就是MessageDialog的背景有半透明遮罩而弹窗本身无遮罩,但总是给界面全部上了遮罩

dialog.setDialogLifecycleCallback(new DialogLifecycleCallback() { @Override public void onShow(MessageDialog dialog) { super.onShow(dialog); dialog.getDialogImpl().boxButton.setVisibility(View.GONE);//没有确定取消按钮时布局会有多余边距,隐藏该布局 dialog.setMaskColor(ContextCompat.getColor(activity, R.color.black)); dialog.getDialogImpl().boxRoot.setAlpha(0.2f);//修改背景遮罩透明度 dialog.getDialogImpl().bkg.setAlpha(1f);//修改内容透明度 }

DialogX 版本

0.0.49

设备信息

Android 10

是否在 Demo 中能复现此问题?

问题截图/视频

错误日志

No response

kongzue commented 5 months ago

很抱歉没能理解您的需求,如果需要调整遮罩颜色直接使用 .setMaskColor() 即可,例如:

//较深的背景遮罩(75% 不透明度的黑)
MessageDialog.show("标题", "这里是正文内容。", "确定")
        .setMaskColor(getColor(R.color.black75));

其中颜色定义在 res/values/colors.xml 中:

<color name="black75">#BF000000</color>

其运行效果如图:

image
dengzibo504 commented 5 months ago

谢谢,才知道black75是指不透明度75...

wsdydeni commented 1 month ago

怎么去除掉MessageDialog的遮罩,全透明

kongzue commented 1 month ago

@wsdydeni .setMaskColor(Color.TRANSPARENT)