我想在精灵上按住一些周期性的声音。我试着用旗帜,但收到了无休止的循环。
scene.setOnAreaTouchListener(new IOnAreaTouchListener() {
@Override
public boolean onAreaTouched(TouchEvent pSceneTouchEvent, ITouchArea pTouchArea, float pTouchAreaLocalX, float pTouchAreaLocalY) {
if(pSceneTouchEvent.isActionDown()){
ifHold = true;
if(pTouchArea.equals(kick1Sprite)){
while(ifHold){
try {
kickSound.play();
Thread.sleep(soundLoopTimeMilliseconds);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
return true;
}
}
if(pSceneTouchEvent.isActionUp()){
ifHold = false;
}
return false;
}
});
答案 0 :(得分:0)
如果您希望声音在触地时播放,请在播放时播放并停止播放,如下所示:
if(pSceneTouchEvent.isActionDown()){
kickSound.play();
}
if(pSceneTouchEvent.isActionUp()){
kickSound.stop();
}