使用触摸外部事件关闭AlertDialog时是否有回调?我启用了“setCanceledOnTouchOutside(true)”。我想在使用touch outside事件关闭AlertDialog后设置特定视图的可见性。有什么想法吗?
如果有帮助,我在Fragment中使用AlertDialog.Builder()。
答案 0 :(得分:4)
OnDismissListener似乎最合适,但它需要相对较高的API级别,因此您可能需要坚持使用OnCancelListener。
答案 1 :(得分:1)
我发布Kotlin版本是因为我今天在寻找它,而且我很辛苦
val builder = AlertDialog.Builder(requireContext())
builder.setTitle("title")
builder.setMessage("message")
builder.setOnCancelListener { func->Log.i("meh","meh") }
答案 2 :(得分:0)
如果您位于自定义对话框类中,并且希望捕获“对话框外单击”事件,请覆盖cancel()。如果您希望捕获任何“对话框关闭”事件,请覆盖dismiss()。 我建议在super.dismiss()之前插入逻辑。 Kotlin示例:
override fun dismiss() {
Utils.hideKeyboard(mContext, window)
super.dismiss()
}