我正在为我的任务制作月球着陆器游戏
我有一个按钮并在按钮按下或 ACTION_DOWN 时为它设置一个 onTouchListener(不是 onClick),火箭飞起来并在 ACTION_UP 上停止加速。
目前它只在 ACTION_DOWN 上执行一次,所以它的行为就像一个 onClick 按钮。
任何帮助,将不胜感激
- gView 是所有魔法发生的游戏类的一个实例
gView.mainThruster() 调用游戏类中使飞船向上飞行的方法,例如 Y -= 10;
mThrust = (Button) findViewById(R.id.mainThrustBtn); mThrust.setOnTouchListener(new OnTouchListener(){ @Override public boolean onTouch(View v, MotionEvent event) { if(event.getAction() == MotionEvent.ACTION_DOWN) { if(fuel > 0){ gView.checkFuel(fuel); gView.mainThruster(); mThrustSound.start(); fuel -= 0.5; fuelGauge.setProgress((int)fuel); } } else if(event.getAction() == MotionEvent.ACTION_UP){ mThrustSound.pause(); //mThrustSound.release(); } else{ //do nothing } return true; } });