旋转屏幕崩溃Android应用程序

Jee*_*mar 3 android android-configchanges

我是android开发的新手.我开发了一个应用程序,现在的问题是每当我旋转屏幕时,应用程序再次启动活动然后崩溃应用程序.我在google上找到了一些解决方案来使用android:configChanges ="orientation".它工作正常但是当我旋转屏幕时,它的屏幕尺寸不会改变.如何解决这个问题呢 ?

Logact:

05-28 14:32:52.038:E/AndroidRuntime(276):FATAL EXCEPTION:main 05-28 14:32:52.038:E/AndroidRuntime(276):java.lang.IllegalArgumentException:视图未附加到窗口管理器05- 28 14:32:52.038:E/AndroidRuntime(276):在android.view.WindowManagerImpl.findViewLocked(WindowManagerImpl.java:355)05-28 14:32:52.038:E/AndroidRuntime(276):在android.view. WindowManagerImpl.removeView(WindowManagerImpl.java:200)05-28 14:32:52.038:E/AndroidRuntime(276):at android.view.Window $ LocalWindowManager.removeView(Window.java:432)05-28 14:32: 52.038:E/AndroidRuntime(276):在android.app.Dialog.dismissDialog(Dialog.java:278)05-28 14:32:52.038:E/AndroidRuntime(276):在android.app.Dialog.access $ 000( Dialog.java:71)05-28 14:32:52.038:E/AndroidRuntime(276):在android.app.Dialog $ 1.run(Dialog.java:111)05-28 14:32:52.038:E/AndroidRuntime (276):在android.app.Dialog.dismiss(Dialog.java:268)05-28 14:32:52.038:E/AndroidRuntime(276):在android.app.Dialog.cancel(Dialog.java:951) 05-28 14:32:52.0 38:E/AndroidRuntime(276):at com.MobileWeb.mytestbuddy.PremiumMain $ TheTask.onPostExecute(PremiumMain.java:373)05-28 14:32:52.038:E/AndroidRuntime(276):at com.MobileWeb.mytestbuddy .PremiumMain $ TheTask.onPostExecute(PremiumMain.java:1)05-28 14:32:52.038:E/AndroidRuntime(276):at android.os.AsyncTask.finish(AsyncTask.java:417)05-28 14:32 :52.038:E/AndroidRuntime(276):在android.os.AsyncTask.access $ 300(AsyncTask.java:127)05-28 14:32:52.038:E/AndroidRuntime(276):at android.os.AsyncTask $ InternalHandler .handleMessage(AsyncTask.java:429)05-28 14:32:52.038:E/AndroidRuntime(276):at android.os.Handler.dispatchMessage(Handler.java:99)05-28 14:32:52.038:E/AndroidRuntime(276):在android.os.Looper.loop(Looper.java:123)05-28 14:32:52.038:E/AndroidRuntime(276):在android.app.ActivityThread.main(ActivityThread.java: 4627)05-28 14:32:52.038:E/AndroidRuntime(276):at java.lang.reflect.Method.invokeNative(Native Method)05-28 14:32:52.038:E/AndroidRuntime(276):at java .lang.reflect.Me thod.invoke(Method.java:521)05-28 14:32:52.038:E/AndroidRuntime(276):at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:868)05-28 14:32:52.038:E/AndroidRuntime(276):at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)05-28 14:32:52.038:E/AndroidRuntime(276):at dalvik .system.NativeStart.main(Native方法)

Din*_*dha 41

您可以通过向应用程序的清单文件添加以下内容来避免活动重新创建.

android:configChanges="orientation|keyboardHidden|screenSize"
Run Code Online (Sandbox Code Playgroud)

如下

      <activity
        android:name=".your activity"
        android:configChanges="orientation|keyboardHidden|screenSize"
        android:label="@string/app_name" >
    </activity>
Run Code Online (Sandbox Code Playgroud)