【发布时间】:2012-10-05 22:15:18
【问题描述】:
我正在尝试在屏幕上绘制一个球,但它强制关闭。出了点问题。
Ball b = new Ball();
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.ingame);
start();
}
private void start() {
Ball b = new Ball();
}
public void paint(Graphics g) {
b.paint(g);
g.setColor(Color.GREEN);
g.fillOval(x-radius, y-radius, radius*2, radius*2);
}
这是我的 LogCat:
10-15 21:02:45.492: E/dalvikvm(7847): 找不到类 'com.game.src.Ball',引用自方法 com.jordan.bungee.bounce.Cracka。 10-15 21:02:45.492: W/dalvikvm(7847): VFY: 无法解析 Lcom/jordan/bungee/bounce/Cracka 中的新实例 417 (Lcom/game/src/Ball;); 10-15 21:02:45.492: D/dalvikvm(7847): VFY: 在 0x002b 处替换操作码 0x22 10-15 21:02:45.492: D/dalvikvm(7847): VFY: Lcom/jordan/bungee/bounce/Cracka 中的死代码 0x002d-0032;。 ()V 10-15 21:02:45.496: E/dalvikvm(7847): 找不到类 'com.game.src.Ball',引用自方法 com.jordan.bungee.bounce.Cracka.start 10-15 21:02:45.496: W/dalvikvm(7847): VFY: 无法解析 Lcom/jordan/bungee/bounce/Cracka 中的新实例 417 (Lcom/game/src/Ball;);
10-15 21:02:45.496: D/dalvikvm(7847): VFY: 在 0x0000 处替换操作码 0x22
10-15 21:02:45.500: D/dalvikvm(7847): VFY: Lcom/jordan/bungee/bounce/Cracka 中的死代码 0x0002-0005;.start ()V
10-15 21:02:45.500: W/dalvikvm(7847): VFY: 无法找到签名中引用的类 (Ljava/awt/Graphics;)
10-15 21:02:45.503: I/dalvikvm(7847): 找不到方法 com.game.src.Ball.paint,引用自方法 com.jordan.bungee.bounce.Cracka.paint
10-15 21:02:45.503: W/dalvikvm(7847): VFY: 无法解析虚拟方法 3021: Lcom/game/src/Ball;.paint (Ljava/awt/Graphics;)V
10-15 21:02:45.503: D/dalvikvm(7847): VFY: 在 0x0002 处替换操作码 0x6e
10-15 21:02:45.503: D/dalvikvm(7847): VFY: Lcom/jordan/bungee/bounce/Cracka 中的死代码 0x0005-001f;.paint (Ljava/awt/Graphics;)V
10-15 21:02:45.507: D/AndroidRuntime(7847): 关闭虚拟机
10-15 21:02:45.507: W/dalvikvm(7847): threadid=1: 线程以未捕获的异常退出 (group=0x4001e578) 10-15 21:02:45.527:E/AndroidRuntime(7847):致命异常:主要
10-15 21:02:45.527: E/AndroidRuntime(7847): java.lang.NoClassDefFoundError: com.game.src.Ball
10-15 21:02:45.527: E/AndroidRuntime(7847): at com.jordan.bungee.bounce.Cracka.(Cracka.java:22)
10-15 21:02:45.527: E/AndroidRuntime(7847): at java.lang.Class.newInstanceImpl(Native Method)
10-15 21:02:45.527: E/AndroidRuntime(7847): at java.lang.Class.newInstance(Class.java:1409)
10-15 21:02:45.527:E/AndroidRuntime(7847):在 android.app.Instrumentation.newActivity(Instrumentation.java:1021)
10-15 21:02:45.527:E/AndroidRuntime(7847):在 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1565)
10-15 21:02:45.527:E/AndroidRuntime(7847):在 android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1667)
10-15 21:02:45.527: E/AndroidRuntime(7847): at android.app.ActivityThread.access$1500(ActivityThread.java:117)
10-15 21:02:45.527: E/AndroidRuntime(7847): 在 android.app.ActivityThread$H.handleMessage(ActivityThread.java:935)
10-15 21:02:45.527: E/AndroidRuntime(7847): at android.os.Handler.dispatchMessage(Handler.java:99)
10-15 21:02:45.527: E/AndroidRuntime(7847): 在 android.os.Looper.loop(Looper.java:130)
10-15 21:02:45.527: E/AndroidRuntime(7847): 在 android.app.ActivityThread.main(ActivityThread.java:3687)
10-15 21:02:45.527: E/AndroidRuntime(7847): at java.lang.reflect.Method.invokeNative(Native Method)
10-15 21:02:45.527: E/AndroidRuntime(7847): at java.lang.reflect.Method.invoke(Method.java:507)
10-15 21:02:45.527: E/AndroidRuntime(7847): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:842)
10-15 21:02:45.527: E/AndroidRuntime(7847): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:600)
10-15 21:02:45.527: E/AndroidRuntime(7847): at dalvik.system.NativeStart.main(Native Method)
【问题讨论】:
-
抛出的错误是什么?检查您的 LogCat 以找到根本原因。发布,我们会尽力提供帮助。
-
请发布 LogCat 错误,以便我们查看发生了什么。
-
@Jordan - 在 Eclipse 中(我猜你正在使用它,因为你有 eclipse 标签),底部的一个窗口应该被称为“LogCat”。将过滤器设置为“错误”,然后当应用程序崩溃时,它应该以红色打印 20-30 行详细说明崩溃情况。突出显示这些行并将它们复制到您的帖子中。
-
一件事是肯定的。错误不在您显示的代码中,因为您调用的唯一代码是 start() 并且所做的只是创建一个新的 Ball 实例。因此,要么您没有显示相关代码,要么错误在 Ball 的构造函数中。
-
@Simon 这就是我拥有的所有代码......我现在将 LogCat 放在我原来的帖子中。
标签: java android eclipse logcat