读书人

解决ActivityGroup的sub Activity中sp

发布时间: 2012-06-30 17:20:13 作者: rapoo

解决ActivityGroup的sub Activity中spinner的WindowManager$BadTokenException的问题

在ActivityGroup的sub activity中直接使用Spinner会遇到下面的异常信息:

?ERROR/AndroidRuntime(964): FATAL EXCEPTION: main
?ERROR/AndroidRuntime(964):android.view.WindowManager$BadTokenException: Unable to add window -- token

说明:

???R.layout.question_activity:是你当前Activity的布局文件。

?

第二,要注意:

?LayoutInflater.from(getParent().getParent())中from()的参数,是你要显示Spinner的Dialog的页面。

?

我认为最主要的原因是:

???Spinner的选项是以Dialog的形式显示的(上面的异常信息:at android.app.Dialog.showDialog.java)),是需要显示在总体页面之上的。

????比如:

???ActivityGroup1里面一个ActivityGroup2,而ActivityGroup2中有一个Activity,在这个Activity里有我们的Spinner,那么点击Spinner弹出的Dialog是显示在ActivityGroup1之上的,而不是显示在ActivityGroup2或者Activity之上的。

具体请查看:?http://www.anddev.org/view-layout-resource-problems-f27/how-to-fix-this-windowmanager-badtokenexception-t16555.html

读书人网 >移动开发

热点推荐