防止DialogFragment在触摸空闲区域时被忽略



默认情况下,当显示DialogFragment时,会有一个大的、未占用的区域显示为半透明覆盖。当用户触摸时,DialogFragment被解除。如何防止这种行为?请注意,我仍然希望用户能够使用系统后退按钮关闭对话框。

我已经试过了

isCancelable = false // set inside my DialogFragment

在这种情况下,当一个人触摸自由区域时,DialogFragment不会被忽略,这正是我想要的。然而,作为一个负面影响,系统后退按钮也会停止工作。那么,如何在触摸空闲区域时仅禁用解除对话框,同时仍保持系统后退按钮启用?

提示:我正在使用Android导航组件(最新的2.3.0-alpha04(

您应该使用这个:

setCanceledOnTouchOutside(false)

最新更新