2013-11-08 2 views
-1

У меня проблема в setontouchLister. Я пытаюсь воспроизвести клип на 10 секунд, когда нажимается кнопка, и когда я удаляю палец из нее, он должен остановиться ... Я пробовал, но на ощупь он играл и никогда не останавливался до тех пор, пока не закончится время, то есть 10 секунд. Пожалуйста, помогите !! вот мой кодANDROID ONTOUCH LISTENER

MediaPlayer mp; 



@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 


    Button btn = (Button) findViewById(R.id.m_b); 
     mp = MediaPlayer.create(MainActivity.this, R.raw.gm); 




     btn.setOnTouchListener(new OnTouchListener() { 


      @Override 

      public boolean onTouch(View v, MotionEvent event) { 

       int action = event.getAction() & MotionEvent.ACTION_MASK; 

       if (action == MotionEvent.ACTION_DOWN) { 

        mp.start(); 

        return true; 
       } 


       return true; 
      } 

     }); 

} 

@Override 

protected void onPause() { 

    // TODO Auto-generated method stub 

    super.onPause(); 

    mp.release(); 

    finish(); 

} 

ответ

0

Try:

if (action == MotionEvent.ACTION_DOWN) { 
     mp.start(); 
     return true; 
    } 
    else if (action == MotionEvent.ACTION_UP) { 
     mp.stop(); 
     return true; 
    } 
+0

Он даже не работает больше я имею в виду кнопка не воспроизводится звук –

+0

@OsamaAftab вам нужно позвонить начать() вниз и стоп() на UP, см пересмотренный образец кода –

+0

да я получил, что только a мин. назад просто сделал то же самое –

0

Вы просто остановиться, когда сенсорный слушатель отправляет событие ACTION_UP.

if (action == MotionEvent.ACTION_UP) { 
    mp.stop(); 
    return true; 
} 
+0

Это еще не работает, я имею в виду. Кнопка не воспроизводит звук –

Смежные вопросы