Android два звука при нажатии кнопки

1

Я пытаюсь использовать два звука при нажатии кнопки: один звук при нажатии кнопки, а другой - при отпускании кнопки. Как я могу это сделать?

В настоящий момент я воспроизвожу звук, когда нажата кнопка:

    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();
                }

            });
        }

    });
  • 1
    Вам нужно будет самостоятельно обрабатывать onTouch , чтобы определить, когда кнопка отпущена.
Теги:
audio
button

1 ответ

2
Лучший ответ

Попробуйте использовать 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 который у вас уже есть.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню