我修复了大型 android 应用程序,并且我有许多自定义对话框继承自各种类型的标准 android 对话框(AlertDialog、ProgressDialog、...)。
我必须为应用程序中的所有对话框添加选项“setCanceledOnTouchOutside(false)”,因为在 ICS 中我们默认将此选项设置为 true android 4.0 对话框在对话框窗口之外被触摸时被取消
我可以为项目中的每个对话框添加“*dialog.setCanceledOnTouchOutside(false)”行,但这很难维护解决方案。
我不能从继承自 Dialog 的 MyDialog 继承,因为我也继承自 AlertDialog、ProgressDialog……。
可能最好的解决方案是将整个项目的所有对话框选项设置在一个地方,或者进行任何黑客攻击,默认情况下从旧的 android 版本而不是 ICS 给我们提供默认行为,但我不知道这是否可能以及如何做到这一点?
你能给我建议吗?