Android Studio 应用程序不从主菜单启动,并且单击按钮时崩溃

标签 android android-studio crash

我是android初学者,我正在尝试制作一个问答游戏。尽管该应用程序正在我的手机上运行,​​但几乎没有问题。 (使用真实设备)

第一个问题 - 应用程序第一次运行正常,游戏完成后,如果按后退按钮,它会导航到主菜单。之后,如果您单击开始按钮,应用程序就会崩溃(不幸的是,appname 已停止。)

第二个问题 - 退出游戏后,如果我再次启动应用程序,它会从测验而不是主菜单开始。

我该如何修复它们?



这是logcat错误报告


    09-17 15:33:57.333  11833-11833/com.example.ice.quizgametest E/ViewRootImpl﹕ onInputEvent:dispatchAttachedToWindow is not called.[event:KeyEvent { action=ACTION_UP, keyCode=KEYCODE_BACK, scanCode=158, metaState=0, flags=0x8, repeatCount=0, eventTime=47573455, downTime=47573407, deviceId=2, displayId=0, source=0x101 }]
    09-17 15:33:58.384  11833-11833/com.example.ice.quizgametest E/ViewRootImpl﹕ sendUserActionEvent() mView == null
    09-17 15:34:11.046  11833-11833/com.example.ice.quizgametest E/ViewRootImpl﹕ sendUserActionEvent() mView == null
    09-17 15:34:12.988  11833-11833/com.example.ice.quizgametest D/AndroidRuntime﹕ Shutting down VM
    09-17 15:34:12.988  11833-11833/com.example.ice.quizgametest W/dalvikvm﹕ threadid=1: thread exiting with uncaught exception (group=0x41ed7930)
    09-17 15:34:12.988  11833-11833/com.example.ice.quizgametest E/AndroidRuntime﹕ FATAL EXCEPTION: main
        java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.ice.quizgametest/com.example.ice.quizgametest.quiz}: java.lang.ArrayIndexOutOfBoundsException: length=2; index=2
                at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2255)
                at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2309)
                at android.app.ActivityThread.access$700(ActivityThread.java:157)
                at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1289)
                at android.os.Handler.dispatchMessage(Handler.java:99)
                at android.os.Looper.loop(Looper.java:176)
                at android.app.ActivityThread.main(ActivityThread.java:5319)
                at java.lang.reflect.Method.invokeNative(Native Method)
                at java.lang.reflect.Method.invoke(Method.java:511)
                at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1102)
                at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:869)
                at dalvik.system.NativeStart.main(Native Method)
         Caused by: java.lang.ArrayIndexOutOfBoundsException: length=2; index=2
                at com.example.ice.quizgametest.quiz.onCreate(quiz.java:45)
                at android.app.Activity.performCreate(Activity.java:5326)
                at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1097)
                at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2218)
                at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2309)
                at android.app.ActivityThread.access$700(ActivityThread.java:157)
                at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1289)
                at android.os.Handler.dispatchMessage(Handler.java:99)
                at android.os.Looper.loop(Looper.java:176)
                at android.app.ActivityThread.main(ActivityThread.java:5319)
                at java.lang.reflect.Method.invokeNative(Native Method)
                at java.lang.reflect.Method.invoke(Method.java:511)
                at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1102)
                at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:869)
                at dalvik.system.NativeStart.main(Native Method)

最佳答案

问题 1

您粘贴到那里的异常会告诉您一切。首先,当您分析最常见情况下的异常时,您必须找到异常的“原因”部分。 这一行:

Caused by: java.lang.ArrayIndexOutOfBoundsException: length=2; index=2

它告诉您尝试从数组大小之外获取或设置元素。可能您是从 1 而不是 0 或任何其他原因开始索引。 下一行:

at com.example.ice.quizgametest.quiz.onCreate(quiz.java:45)

为您提供发生异常的完整路径。它的类:quiz,方法:onCreate,行:45。只需调试这种情况并尝试找到解决方案。

问题 2

您必须阅读有关 Activity LifeCycle 的信息.

关于Android Studio 应用程序不从主菜单启动,并且单击按钮时崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32625154/

相关文章:

android - 如何修复 Android Manifest 文件中的错误 "Unsupported type ' uses-permission'"

android - 在 Android studio 中使用 -Xlint 重新编译

c - 结构的扫描使程序崩溃

android - 错误 : cannot find symbol variable abc_ic_ab_back_mtrl_am_alpha

java - Android反射方法错误

android - GridView 下的 TextView

java - 屏幕关闭/打开后,同步(和 volatile )无法按预期工作

iphone - 被拒绝的 iPhone 应用程序有奇怪的崩溃日志

ios - Firebase 使 iMessage 扩展崩溃

android - 所有屏幕中的自定义 toast 消息?