Событие триггера при нажатии кнопки на Android

У меня есть следующий код для Android, который отлично работает, чтобы воспроизводить звук после нажатия кнопки:

Button SoundButton2 = (Button)findViewById(R.id.sound2); SoundButton2.setOnClickListener(new OnClickListener() { public void onClick(View v) { mSoundManager.playSound(2); } }); 

Моя проблема в том, что я хочу, чтобы звук воспроизводился сразу после нажатия кнопки (прикосновение), а не при отпускании (коснитесь вверх). Любые идеи о том, как я могу это сделать?

Может быть, с помощью OnTouchListener ? Я думаю, MotionEvent будет иметь некоторые методы для регистрации касания объекта.

  button.setOnTouchListener(new OnTouchListener() { @Override public boolean onTouch(View v, MotionEvent event) { // TODO Auto-generated method stub return false; } })) 

Вы должны сделать это: b кнопка.

 b.setOnTouchListener(new OnTouchListener() { @Override public boolean onTouch(View v, MotionEvent event) { if (event.getAction() == MotionEvent.ACTION_DOWN ) { mSoundManager.playSound(2); return true; } return false; } }); 

import android.view.MotionEvent;