我想提出一個月球着陸器遊戲,我的任務執行的語句不會繼續ACTION_DOWN
我有一個按鈕,當按鈕是onTouchListener設置爲它(不是的onClick) 向下或ACTION_DOWN火箭飛行並在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; } });
你確定'else if'部分沒有執行嗎?你有沒有嘗試在裏面放一個'Log'並檢查? – Nizam
是的其他如果執行,因爲當我放開按鈕(ACTION_UP)正在使用的聲音效果停止。 –