我正在开发一个在tabhost中有一个活动组的应用程序。所以我在同一个选项卡中处理了一堆活动。
当我尝试搜索界面并在此选项卡内部并且没有任何反应时,如果我在另一个活动中启动搜索界面正常工作,则会出现问题“。
此外,如果我尝试使用“onClick”选项从布局xml执行方法,应用程序崩溃
01-06 10:09:24.533: E/AndroidRuntime(1404): Caused by: android.view.WindowManager$BadTokenException: Unable to add window -- token android.app.LocalActivityManager$LocalActivityRecord@40538fa0 is not valid; is your activity running?
01-06 10:09:24.533: E/AndroidRuntime(1404): at android.view.ViewRoot.setView(ViewRoot.java:562)
01-06 10:09:24.533: E/AndroidRuntime(1404): at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:177)
01-06 10:09:24.533: E/AndroidRuntime(1404): at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:91)
01-06 10:09:24.533: E/AndroidRuntime(1404): at android.view.Window$LocalWindowManager.addView(Window.java:433)
01-06 10:09:24.533: E/AndroidRuntime(1404): at android.app.Dialog.show(Dialog.java:265)
01-06 10:09:24.533: E/AndroidRuntime(1404): at android.app.DatePickerDialog.show(DatePickerDialog.java:132)
01-06 10:09:24.533: E/AndroidRuntime(1404): at android.app.Activity.showDialog(Activity.java:2727)
01-06 10:09:24.533: E/AndroidRuntime(1404): at android.app.Activity.showDialog(Activity.java:2685)
我还注意到,如果我打算在此ActivityGroup崩溃中显示一个对话框,但我重叠此问题,获取父活动的上下文以显示它。
m_ProgressDialog = ProgressDialog.show(getParent(), "Please wait", "Downloading info", true,false);
代替
m_ProgressDialog = ProgressDialog.show(this, "Please wait", "Downloading info", true,false);
可能有嵌套类吗?
问候
答案 0 :(得分:1)
我猜你正在使用
setContentView(R.layout.your_id);
导致ActivityGroup中的COntext问题。
尝试以这种方式使用它:
View viewToLoad = LayoutInflater.from(this.getParent()).inflate(R.layout.your_id, null);
setContentView(viewToLoad);
简而言之:您应该切换到片段,因为不推荐使用ActivityGroups。他们遇到了很多麻烦......
答案 1 :(得分:0)
做
View viewToLoad = LayoutInflater.from(this.getParent()).inflate(R.layout.your_id, null);
setContentView(viewToLoad);
删除xml文件中的onClick方法,并在java代码中的按钮上放置onClickListener。这将完成工作;)