Error:
android.view.WindowManager$BadTokenException: Unable to add window -- token null is not for an application
此情况出现在android不同版本上。
描述:
项目开始在4.0.1版本上运行没问题,后来在2.3.4版本上测试报出这个异常。异常是由点击spinner弹出框时抛出的。
由于我的spinner是通过
LayoutInflater inflater =
(LayoutInflater)getApplication().getSystemService(LAYOUT_INFLATER_SERVICE);
View layout = inflater.inflate(R.layout.custom_layout,
(ViewGroup)findViewById(R.id.custom_layout_root));
spinner = (Spinner)layout.findViewById(R.id.custom_layout_spinner); 获取的。
然后在2.3.4版本上运行时抛出以上异常。
解决方法:
LayoutInflater inflater
=
(LayoutInflater) getApplication().getSystemService(LAYOUT_INFLATER_SERVICE);
just replace that with the version below, since you're launching the AlertDialog from an
Activity
LayoutInflater inflater =
(LayoutInflater) getSystemService(LAYOUT_INFLATER_SERVICE);
本文详细介绍了在Android 2.3.4版本中遇到的spinner弹出框触发的窗口添加异常问题,并提供了针对此问题的解决方法,帮助开发者在不同版本的Android系统上顺利实现spinner组件的使用。
398

被折叠的 条评论
为什么被折叠?



