class TestDialog(context: Context?,var clickListener: OnClickCallBack) : Dialog(context!!) { lateinit var binding:TestDialogBinding override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) binding = TestDialogBinding.inflate(LayoutInflater.from(context)) setContentView(binding.root) //设置对话框的背景为透明 window?.setBackgroundDrawableResource(android.R.color.transparent) //创建 WindowManager.LayoutParams 对象 layoutParams 并从当前窗口属性 window?.attributes 复制属性 var layoutParams = WindowManager.LayoutParams() layoutParams.copyFrom(window?.attributes) //对话框的宽度设置为 600 像素 layoutParams.width = 600 //将新的布局参数应用于窗口 window?.attributes = layoutParams //设置对话框为不可取消 setCancelable(false) } interface OnClickCallBack{ fun confirm(); fun cancel(); } }