我正在使用初学Android游戏书中介绍的框架, 它有一个名为drawPixmap()的方法,它的定义是:
@Override
public void drawPixmap(Pixmap pixmap, int x, int y) {
canvas.drawBitmap(((AndroidPixmap)pixmap).bitmap, x, y, null);
}
当我调用该函数时,让我们说
g.drawPixmap(Assets.ball,200,200);
有效。 但是当我像这样使用它时
g.drawPixmap(Assets.ball,ball.getX(),ball.getY());
没有。
我试过让X& Y之前的局部变量,仍然没有好处。 球类中的X和Y都是整数。
在书中,他展示了一个包含使用变量的代码。但是我不能让它发挥作用。
任何想法为什么它不会识别我可爱的小变量?
现在我注意到在该类的构造函数中,它确实成功地使用了变量。 只有在update()方法中它才没有。
我收到运行时错误:
Fatal Exception Thread-10 java.lang.NullPointerException
at com.carmel.android.accelpong.GameScreen.<init>
但现在我觉得它与球类本身有关,因为即使在尝试使用setX()方法设置X时,我也会得到相同的错误..但它并没有让我更接近解决这个问题< / p>
答案 0 :(得分:0)
您的ball
变量为null
。你忘了初始化它,或以某种方式重写它。包括从创建球到调用该函数的代码,以获得更详细的答案。