0

可以,然后呢

  • 创建了新的 Zombie 变量。
    private Zombie zombieA;
  • 僵尸变量初始化

    zombieA = new Zombie(1);
  • 在 Zombie 类中调用构造函数:

    public Zombie(int type) {
    this.type = type;
    x=200;
    y=100;
    dx=1;
    paintA.setColor(Color.RED);}
    

基本上,我希望游戏类创建一个新的僵尸,类型为 1,它将通过开关和案例来确定要创建的僵尸类型(级别 1=10)。问题是当我运行它时,我的应用程序强制关闭,并且出现错误:

zombieA = new Zombie(1);

从初始类和错误:

public Zombie(int type) {

来自僵尸班。我一遍又一遍地检查它,我只是看不到问题,有人注意到有什么问题吗?

4

2 回答 2

1

没有堆栈跟踪很难说,但我怀疑问题出在这一行:

paintA.setColor(Color.RED);

你确定paintA已经正确初始化了吗?在我看来,它是null并导致NullPointerException您的构造函数中的 a 。如果是这种情况,请务必先实例化它,如下所示:

paintA = new ...
于 2012-04-14T16:32:56.057 回答
0

您是从工作线程中调用 Zombie 类吗?您需要从 UI 线程执行此操作,这里有一些示例:Can't create handler inside thread that has not called Looper.prepare()

于 2012-04-14T16:11:31.630 回答