0
我已經獲得瞭如下定義的全屏幕縱向活動。橫向模式中警報框出現窗口泄漏錯誤
在清單:
<activity
android:name=".CameraActivity"
android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen">
</activity>
和
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
此活動的OnCreate
方法簡單地調用一個警告框,是和否按鈕。我的問題是,當手機保持在橫向狀態時,警報框崩潰,我得到下面顯示的泄漏窗口錯誤。
12-06 15:26:01.590: E/WindowManager(6286): Activity com.eyepax.rdms.CameraActivity has leaked window [email protected] that was originally added here
12-06 15:26:01.590: E/WindowManager(6286): android.view.WindowLeaked: Activity com.eyepax.rdms.CameraActivity has leaked window [email protected] that was originally added here
12-06 15:26:01.590: E/WindowManager(6286): at android.view.ViewRoot.<init>(ViewRoot.java:277)
12-06 15:26:01.590: E/WindowManager(6286): at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:148)
12-06 15:26:01.590: E/WindowManager(6286): at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:91)
12-06 15:26:01.590: E/WindowManager(6286): at android.view.Window$LocalWindowManager.addView(Window.java:433)
12-06 15:26:01.590: E/WindowManager(6286): at android.app.Dialog.show(Dialog.java:288)
12-06 15:26:01.590: E/WindowManager(6286): at com.eyepax.rdms.CameraActivity$CameraTask.onPreExecute(CameraActivity.java:177)
12-06 15:26:01.590: E/WindowManager(6286): at android.os.AsyncTask.execute(AsyncTask.java:391)
12-06 15:26:01.590: E/WindowManager(6286): at com.eyepax.rdms.CameraActivity.onActivityResult(CameraActivity.java:127)
12-06 15:26:01.590: E/WindowManager(6286): at android.app.Activity.dispatchActivityResult(Activity.java:4094)
12-06 15:26:01.590: E/WindowManager(6286): at android.app.ActivityThread.deliverResults(ActivityThread.java:2905)
12-06 15:26:01.590: E/WindowManager(6286): at android.app.ActivityThread.performResumeActivity(ActivityThread.java:2436)
12-06 15:26:01.590: E/WindowManager(6286): at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:2481)
12-06 15:26:01.590: E/WindowManager(6286): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1847)
12-06 15:26:01.590: E/WindowManager(6286): at android.app.ActivityThread.handleRelaunchActivity(ActivityThread.java:3288)
12-06 15:26:01.590: E/WindowManager(6286): at android.app.ActivityThread.access$1600(ActivityThread.java:132)
12-06 15:26:01.590: E/WindowManager(6286): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1042)
12-06 15:26:01.590: E/WindowManager(6286): at android.os.Handler.dispatchMessage(Handler.java:99)
12-06 15:26:01.590: E/WindowManager(6286): at android.os.Looper.loop(Looper.java:143)
12-06 15:26:01.590: E/WindowManager(6286): at android.app.ActivityThread.main(ActivityThread.java:4268)
12-06 15:26:01.590: E/WindowManager(6286): at java.lang.reflect.Method.invokeNative(Native Method)
12-06 15:26:01.590: E/WindowManager(6286): at java.lang.reflect.Method.invoke(Method.java:507)
12-06 15:26:01.590: E/WindowManager(6286): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
12-06 15:26:01.590: E/WindowManager(6286): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
12-06 15:26:01.590: E/WindowManager(6286): at dalvik.system.NativeStart.main(Native Method)
這不應該因爲各種問題而使用。 Android sdk網站上說:「注意:自己處理配置更改可能會使其使用替代資源變得更加困難,因爲系統不會自動爲您應用它。此技術在您必須避免重新啓動時應被視爲最後一招配置更改,並且不推薦用於大多數應用程序。「 – rfsk2010
請看看這個答案:http://stackoverflow.com/questions/456211/activity-restart-on-rotation-android – Hussain
請看看這裏以及,如果你沒有http://developer.android .COM /引導/主題/資源/運行時changes.html – rfsk2010