搞砸了我的应用程序,现在它在加载时崩溃了。不明白来自catlog的错误

时间:2012-12-27 20:38:27

标签: java android

我有一个按预期工作的应用。由于android的未知行为,我不喜欢UI所以我决定重新设计XML文件。我创建了一个new_layout.xml文件,按我的意愿设计它,然后重构>将activity_main.xml文件重命名为activity_main_old.xml并重构>将new_layout.xml重命名为activity_main.xml。

应用程序崩溃说不能将Button转换为ImageButton,但奇怪的是我只将一个XML文件中的元素复制/粘贴到另一个XML文件中,所以应该没有问题,因为名字是一样的。

因此,我认为每个元素的名称可能与原始布局(现在是activity_main_old.xml)冲突,因此我将此文件从项目中删除。然后我重构了>将activity_main.xml重命名为更有意义的内容(scoreboard.xml)。我将setContentView()方法更改为下一个记分板布局ID。

我不明白我收到的错误消息,并感谢我能得到的任何帮助:

12-27 15:31:24.744: E/AndroidRuntime(4800): FATAL EXCEPTION: main
12-27 15:31:24.744: E/AndroidRuntime(4800): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.ultimatescoreclock/com.example.ultimatescoreclock.ScoreboardActivity}: java.lang.NullPointerException
12-27 15:31:24.744: E/AndroidRuntime(4800):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1956)
12-27 15:31:24.744: E/AndroidRuntime(4800):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1981)
12-27 15:31:24.744: E/AndroidRuntime(4800):     at android.app.ActivityThread.access$600(ActivityThread.java:123)
12-27 15:31:24.744: E/AndroidRuntime(4800):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1147)
12-27 15:31:24.744: E/AndroidRuntime(4800):     at android.os.Handler.dispatchMessage(Handler.java:99)
12-27 15:31:24.744: E/AndroidRuntime(4800):     at android.os.Looper.loop(Looper.java:137) 12-27 15:31:24.744: E/AndroidRuntime(4800):  at android.app.ActivityThread.main(ActivityThread.java:4424)
12-27 15:31:24.744: E/AndroidRuntime(4800):     at java.lang.reflect.Method.invokeNative(Native Method)
12-27 15:31:24.744: E/AndroidRuntime(4800):     at java.lang.reflect.Method.invoke(Method.java:511) 12-27 15:31:24.744: E/AndroidRuntime(4800):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:791)
12-27 15:31:24.744: E/AndroidRuntime(4800):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:558)
12-27 15:31:24.744: E/AndroidRuntime(4800):     at dalvik.system.NativeStart.main(Native Method) 12-27 15:31:24.744: E/AndroidRuntime(4800): Caused by: java.lang.NullPointerException
12-27 15:31:24.744: E/AndroidRuntime(4800):     at com.example.ultimatescoreclock.ScoreboardActivity.onCreate(ScoreboardActivity.java:207)
12-27 15:31:24.744: E/AndroidRuntime(4800):     at android.app.Activity.performCreate(Activity.java:4465)
12-27 15:31:24.744: E/AndroidRuntime(4800):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1049)
12-27 15:31:24.744: E/AndroidRuntime(4800):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1920)
12-27 15:31:24.744: E/AndroidRuntime(4800):     ... 11 more

1 个答案:

答案 0 :(得分:3)

E/AndroidRuntime(4800): Caused by: java.lang.NullPointerException
E/AndroidRuntime(4800): at com.example.ultimatescoreclock.ScoreboardActivity.onCreate(ScoreboardActivity.java:207)

NullPointerException位于ScoreboardActivity.java类的第207行。

您的问题中没有代码,因此很难说出发生了什么,但原因可能是您试图对null引用进行调用。