【问题标题】:My android app crashes on screen rotation我的 android 应用程序在屏幕旋转时崩溃
【发布时间】:2015-02-11 13:16:21
【问题描述】:

我对 android 开发相当陌生,并且正在开发我的第一个 android 应用程序。我几乎完成了我的编码,但是当我在陆地空间模式下运行应用程序时,它会强制关闭,或者即使我在纵向模式下运行并旋转模拟器,应用程序仍然会崩溃。它在纵向模式下工作正常。我不确定是什么导致了这种情况发生,但在我的 logcat 中,我得到了以下信息。

12-12 18:33:00.074: D/AndroidRuntime(1014): Shutting down VM
12-12 18:33:00.074: W/dalvikvm(1014): threadid=1: thread exiting with uncaught exception (group=0x4001d800)
12-12 18:33:00.104: E/AndroidRuntime(1014): FATAL EXCEPTION: main
12-12 18:33:00.104: E/AndroidRuntime(1014): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.simplecounter/com.main.simplecounter.MainActivity}: java.lang.NullPointerException
12-12 18:33:00.104: E/AndroidRuntime(1014):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663)
12-12 18:33:00.104: E/AndroidRuntime(1014):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
12-12 18:33:00.104: E/AndroidRuntime(1014):     at android.app.ActivityThread.access$2300(ActivityThread.java:125)
12-12 18:33:00.104: E/AndroidRuntime(1014):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
12-12 18:33:00.104: E/AndroidRuntime(1014):     at android.os.Handler.dispatchMessage(Handler.java:99)
12-12 18:33:00.104: E/AndroidRuntime(1014):     at android.os.Looper.loop(Looper.java:123)
12-12 18:33:00.104: E/AndroidRuntime(1014):     at android.app.ActivityThread.main(ActivityThread.java:4627)
12-12 18:33:00.104: E/AndroidRuntime(1014):     at java.lang.reflect.Method.invokeNative(Native Method)
12-12 18:33:00.104: E/AndroidRuntime(1014):     at java.lang.reflect.Method.invoke(Method.java:521)
12-12 18:33:00.104: E/AndroidRuntime(1014):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
12-12 18:33:00.104: E/AndroidRuntime(1014):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
12-12 18:33:00.104: E/AndroidRuntime(1014):     at dalvik.system.NativeStart.main(Native Method)
12-12 18:33:00.104: E/AndroidRuntime(1014): Caused by: java.lang.NullPointerException
12-12 18:33:00.104: E/AndroidRuntime(1014):     at com.main.simplecounter.MainActivity.appBackground(MainActivity.java:252)
12-12 18:33:00.104: E/AndroidRuntime(1014):     at com.main.simplecounter.MainActivity.setUp(MainActivity.java:78)
12-12 18:33:00.104: E/AndroidRuntime(1014):     at com.main.simplecounter.MainActivity.onCreate(MainActivity.java:48)
12-12 18:33:00.104: E/AndroidRuntime(1014):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
12-12 18:33:00.104: E/AndroidRuntime(1014):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
12-12 18:33:00.104: E/AndroidRuntime(1014):     ... 11 more
12-12 18:38:00.158: I/Process(1014): Sending signal. PID: 1014 SIG: 9

我在网上搜索并尝试了一些解决方案,但没有一个有效。例如,我将此添加到我的清单中,但它仍然崩溃。

 <activity
    android:configChanges="orientation|keyboardHidden|screenSize"
</activity>

如果有人可以帮助我,那就太好了。

感谢您抽出宝贵时间,希望我已经清楚地解释了我的问题。

【问题讨论】:

  • 发布您的 MainActivity appbackground 方法的代码。错误在那里
  • 具体请注明MainActivity.java的第252行是什么。
  • 用 appbackground 方法和第 252 行编辑了我的帖子
  • 你能发布你的布局xml文件吗??
  • 您是否在res/layout-land/ 目录中为横向指定了不同的布局?

标签: android emulation logcat screen-orientation mode


【解决方案1】:

是的,我的陆地空间模式有不同的布局

您可能没有在 res/layout-land 布局中指定 id 为 layout 的元素,因此您将获得 java.lang.NullPointerException

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多