解决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之上的。