因此,我正在制作Android游戏,基本上涉及在屏幕上向左和向右移动的飞船(锁定在纵向模式),该游戏试图躲避从屏幕顶部飞过的物体。我有一个类GraphicsView(它扩展视图),处理所有的绘图和whatnot。我试图在按钮上显示两个按钮,一个将船舶向左移动,另一个将船舶向右移动。我有这个布满整个代码:如何在屏幕上显示按钮?
Button mLeft;
mLeft = new Button (context);
mLeft.setX (0);
mLeft.setY (mDisplay.getHeight() - 64);
mLeft.setHeight (64);
mLeft.setWidth (64);
mLeft.setBackgroundColor (80000000);
mLeft.setText ("<");
每当我尝试调用任何上述MLEFT这些方法,我的程序崩溃。我已经尝试将所有这些内容评论出来,然后逐个添加它们以查看它们中的任何一个是否不会崩溃,但是其中的一个是否会崩溃。我能够在没有程序崩溃的情况下执行mLeft.draw(canvas),但屏幕上没有任何内容显示。
对此的任何帮助将不胜感激,谢谢。
我刚刚在mleft = new Button(context)之后添加了mLeft.setOnClickListener(this),但它仍然崩溃。我的onDraw方法的底部有一个invalidate。 –
您需要让您的类实现OnClickListener接口,并且必须重写onClick方法,否则您可以执行以下操作:'mLeft.setOnClickListener(new View.onClickListener {//实现onClick {})'。你还可以显示onDraw() –
我实现了View.OnClickListener和onClick(View视图)方法。 –