Я пытаюсь использовать два звука при нажатии кнопки: один звук при нажатии кнопки, а другой - при отпускании кнопки. Как я могу это сделать?
В настоящий момент я воспроизвожу звук, когда нажата кнопка:
button.setOnClickListener(new OnClickListener() {
public void onClick(View view) {
mp = MediaPlayer.create(Test.this, R.raw.mysound);
mp.start();
mp.setOnCompletionListener(new OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mp) {
// TODO Auto-generated method stub
mp.release();
}
});
}
});
Попробуйте использовать OnTouchListener
:
public boolean onTouch(View v, MotionEvent ev) {
int action = ev.getAction() & MotionEvent.ACTION_MASK;
if (action == MotionEvent.ACTION_DOWN) {
// Play "click" sound
} else if (action == MotionEvent.ACTION_UP || action == MotionEvent.ACTION_CANCEL) {
// Play "unclick" sound
}
}
Вы можете присоединить это к OnTouchListener
используя setOnTouchListener()
же, как вы продемонстрировали с помощью OnClickListener
который у вас уже есть.
onTouch
, чтобы определить, когда кнопка отпущена.