こんにちは、ボタンを押すとサウンドを再生するために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;
}
});
ここで、イベントが終了し、イベントを処理できるようになったことを OS に示すために、false が返されたことがわかります。OS にタッチ イベントを処理させたくない場合は、タッチ イベントを消費したことを示す true を返します。
これが役立つことを願っています。
于 2012-09-17T18:41:04.320 に答える