显示对话框屏幕时,TabView内的Webview崩溃

时间:2011-11-24 12:22:37

标签: android android-webview

我在TabView中有一个WebView。 webView有一个按钮。按下按钮时,将打开旋转器。 我只是用URL加载webview。动作侦听器和微调器是从服务器端触发的。

webview = (WebView) findViewById(R.id.webview);
....
....
webview.loadUrl(locationUrl);

我的应用程序是在Android 2.2上开发的。它在带有OS 2.2的设备中运行良好,但在2.3中崩溃。

以下是日志

11-24 13:44:24.878: ERROR/AndroidRuntime(2684): android.view.WindowManager$BadTokenException: Unable to add window -- token android.app.LocalActivityManager$LocalActivityRecord@406e21e0 is not valid; is your activity running?
11-24 13:44:24.878: ERROR/AndroidRuntime(2684):     at android.view.ViewRoot.setView(ViewRoot.java:527)
11-24 13:44:24.878: ERROR/AndroidRuntime(2684):     at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:177)
11-24 13:44:24.878: ERROR/AndroidRuntime(2684):     at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:91)
11-24 13:44:24.878: ERROR/AndroidRuntime(2684):     at android.view.Window$LocalWindowManager.addView(Window.java:424)
11-24 13:44:24.878: ERROR/AndroidRuntime(2684):     at android.app.Dialog.show(Dialog.java:241)
11-24 13:44:24.878: ERROR/AndroidRuntime(2684):     at android.webkit.WebView$InvokeListBox.run(WebView.java:7583)
11-24 13:44:24.878: ERROR/AndroidRuntime(2684):     at android.os.Handler.handleCallback(Handler.java:587)
11-24 13:44:24.878: ERROR/AndroidRuntime(2684):     at android.os.Handler.dispatchMessage(Handler.java:92)
11-24 13:44:24.878: ERROR/AndroidRuntime(2684):     at android.os.Looper.loop(Looper.java:130)
11-24 13:44:24.878: ERROR/AndroidRuntime(2684):     at android.app.ActivityThread.main(ActivityThread.java:3683)
11-24 13:44:24.878: ERROR/AndroidRuntime(2684):     at java.lang.reflect.Method.invokeNative(Native Method)
11-24 13:44:24.878: ERROR/AndroidRuntime(2684):     at java.lang.reflect.Method.invoke(Method.java:507)
11-24 13:44:24.878: ERROR/AndroidRuntime(2684):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
11-24 13:44:24.878: ERROR/AndroidRuntime(2684):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
11-24 13:44:24.878: ERROR/AndroidRuntime(2684):     at dalvik.system.NativeStart.main(Native Method)

1 个答案:

答案 0 :(得分:0)

使用getparent()获取父上下文。由于这是一个标签,所以一切都在父语境中完成。