我有一个带有几个按钮和一个微调器的对话框似乎工作正常,除了我的应用程序在以下情况下崩溃: 1.开始活动 2.使用Activity :: showDialog显示对话框(在onCreateDialog中创建) 3.单击微调器以显示列表 4. spinner发出AlertDialog 5.旋转设备 6.使用IllegalArgumentException崩溃
我可以看到Activity已经消失了,而且我的Dialog已经消失了,但Spinner提出的AlertDialog仍然存在。我会解雇Spinner AlertDialog,但它是Spinner类的私有成员(我检查了Android源代码),因此无法访问它。
如果您将微调器移动到您获得的活动: 1.开始活动 2.单击微调器以显示列表 3. spinner发出AlertDialog 4.旋转设备 5.微调器AlertDialog消失了 6.活动显示为旋转
我只能得出结论: 1.你根本不应该把微调器放在Dialog(或AlertDialog)上,或者 2.对话框或活动
中存在错误有没有人对这个问题有任何智慧?
答案 0 :(得分:1)
在清单中,将其添加到您的活动声明中:
android:configChanges="orientation"
答案 1 :(得分:0)
我和PopupWindow有同样的问题。解决方案是致电
popup.dismiss()
在onDestroy()方法中。