嗨,当我按下按钮时,我正在使用 Soundpool Android 播放声音。我想知道按下按钮时是否可以保持这种声音播放。
问问题
76 次
1 回答
0
在这里,您需要识别触摸事件,我的意思是按下按钮时的 ACTION_DOWN 和用户抬起手指时的 ACTION_UP。您可以在 ACTION_DOWN 事件发生时开始播放声音,并在 ACTION_UP 事件发生时停止播放。
现在要在按钮上捕获这些事件,您必须在按钮上设置 onTouch 侦听器并实现它的 onTouch() 方法。onTouch() 方法是您必须捕获这些事件并播放/暂停声音的地方。
以下是如何实现按钮的 onTouch() 方法的示例:
btn.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch (View v, MotionEvent event)
{
switch(event.getAction() & MotionEvent.ACTION_MASK)
{
case MotionEvent.ACTION_DOWN:
//here you can start playing song
break;
case MotionEvent.ACTION_UP:
//here you can stop playing song
break;
}
return false;
}
});
在这里您可以注意到我返回了 false 以指示我已完成事件的操作系统,现在您可以处理该事件。如果您不希望操作系统处理触摸事件,则返回 true 表示您已使用触摸事件。
我希望这将有所帮助。
于 2012-09-17T18:41:04.320 回答