我使用android 2.2来开发我的应用程序。但是当我在2.1模拟器上运行它时,它就会出现异常。
每个异常都会被“上下文”捕获。我只是在我的应用程序中使用ActivityGroup。我的活动正在扩展另一堂课。所以我在'Context'字段中使用'this.getParent()'。这在Android 2.2以及更高版本中运行良好。我使用getBaseConext()和getApplicationContext()。但错误仍然存在。对话即将来临。但随后它突然出现异常。
例如:
Dialog dateDialog = new Dialog(this.getParent());
但是在android 2.1中,它捕获了Exception:WindowManager $ BadTockenException。
如何在android 2.1中指定'context'?
谢谢....
答案 0 :(得分:1)
ActivityGroup
和Activity
都是Context
,我敢打赌Activity
继承了ActivityGroup
的{{1}}默认。最后,请尝试使用Context
。
您所描述的内容与a problem I had非常相似,这似乎是从this
启动对话框并使用onCreate
之外的任何内容作为this
的问题。
答案 1 :(得分:0)
您的活动组中有活动,不是吗?
如果您在每个内部活动上下文成员( mContext )中声明并在 onCreate()中使用 this 进行初始化,该怎么办?然后你可以调用新的Dialog(mContext)
UPD: 我用Google搜索了一下,因为这个问题对我来说也很有趣。我发现了这个链接:
http://www.codingon24s.com/2011/02/dialogs-and-android-view-windowmanagerbadtokenexception-2/
但我还没试过呢