2

有什么方法可以知道对话框是否设置为可取消truefalse

前任 :Dialog.setCancelable(true)

我如何获得它的价值?

4

1 回答 1

3

不,Dialog 类在其 API 中没有这样的功能。

如果确实需要,可以使用 Java 反射访问可取消标志:

Field f = Dialog.class.getDeclaredField("mCancelable");
f.setAccessible(true);
boolean cancelable = f.getBoolean(yourDialog);

由于这是访问 Dialog 类内部,因此无法保证它可以在不同版本的 Android 上运行。

当然,如果您自己创建 Dialog,则您知道传递给它的参数,并且可以从那里推断出可取消性。

于 2013-05-23T13:56:59.283 回答