Advertisement
Guest User

Untitled

a guest
Jun 18th, 2019
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.01 KB | None | 0 0
  1. '''private void playAndStop(final View btn, int rawID) {
  2.  
  3. // проверяем играет ли что-то сейчас
  4. if (!answerAboutPlay) { // если нет
  5. lastBtn = (Button) btn; // в переменную ПоследняяКнопка запоминаем нажатую
  6. mp = MediaPlayer.create(context, rawID); // запускаем нужный трэк (передается из кейса)
  7. mp.start();
  8.  
  9. mp.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
  10. @Override
  11. public void onCompletion(MediaPlayer mp) {
  12. btn.setSelected(false);
  13. answerAboutPlay = false;
  14. }
  15. });
  16.  
  17. answerAboutPlay = true; // ставим переменную играет или нет в Да
  18. btn.setSelected(true); // меняем значёк на паузу (реализовано через селектор)
  19.  
  20. } else { // если да
  21.  
  22. stopPlaying(); // останавливаем то, что играет
  23.  
  24. // проверяем какая кнопка была нажата последней (для того, чтобы просто остановить трэк или еще и запустить другой)
  25. if (lastBtn == btn) { // если эта (лежит в переменной ПоследняяКнопка)
  26.  
  27. answerAboutPlay = false; // ставим переменную играет или нет в Нет
  28. btn.setSelected(false); // меняем значёк на плэй
  29. } else { // если не эта
  30.  
  31. lastBtn.setSelected(false); // меняем значек последней нажатой кнопки (её трэк играет) на плэй
  32.  
  33. mp = MediaPlayer.create(context, rawID); // запускаем нужный трэк (передается из кейса)
  34. mp.start();
  35.  
  36. mp.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
  37. @Override
  38. public void onCompletion(MediaPlayer mp) {
  39. btn.setSelected(false);
  40. answerAboutPlay = false;
  41. }
  42. });
  43.  
  44. answerAboutPlay = true; // ставим переменную играет или нет в Да
  45. btn.setSelected(true); // меняем значёк на паузу (у нажатой кнопки)
  46. lastBtn = (Button) btn; // в переменную ПоследняяКнопка запоминаем нажатую
  47. }
  48. }
  49.  
  50. }
  51.  
  52. v.setSelected(answerAboutPlay);
  53.  
  54. switch (position) {
  55. case 0:
  56. playAndStop(v,R.raw.play1);
  57. break;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement