2015-02-06 121 views
2

我有一个关于devoloping android应用程序的简单问题。 问题是不同类型的按钮。 例如,当我的手指在按钮上,音乐是播放,但是当我的手指停止按钮音乐时。我怎样才能做到这一点。 İt可能是不同类型的按钮事件,但我不知道。 我googleıt,但我找到任何东西。 PS:我可以开始,按正常按钮停止进程。但我不能这样做。 PS2:当我在论坛上搜索时,有人推荐使用MotionEvent,但我想我的motionEvent代码已损坏。Android按键KeyDown - KeyUp |不同的按钮事件

play1.setOnClickListener(new View.OnClickListener() 
{   
    public boolean onTouch(View v, MotionEvent event) 
    { 
     // TODO Auto-generated method stub 
     switch (event.getAction()) 
     { 
      case MotionEvent.ACTION_DOWN: 


       m1=MediaPlayer.create(MainActivity.this, R.raw.be); 
       m1.start(); 
       m1.setLooping(true); 

       break; 
      case MotionEvent.ACTION_UP: 
       m1.stop(); 
       m1.release(); 

       break;      
      default: 
       break; 
     } 
     return false; 
+0

您是否尝试在您的switch语句之前初始化m1? – 2015-02-06 23:18:25

+0

让我试试。你提到这个? m1 = MediaPlayer.create(MainActivity.this,R.raw.be); (我的理解很差,因为我的英语很糟糕) – 2015-02-06 23:22:47

回答

2

好吧好吧我知道了。这是我的答案。

play1.setOnTouchListener(new View.OnTouchListener() { 





    @Override 
    public boolean onTouch(View v, MotionEvent event) { 
     int eventaction = event.getAction(); 
     switch (eventaction) { 
      case MotionEvent.ACTION_DOWN: 

       m1=MediaPlayer.create(MainActivity.this, R.raw.be); 
       m1.start(); 
       m1.setLooping(true); 
      return true; 

      case MotionEvent.ACTION_UP: 
      m1.stop(); 
      m1.release(); 

      break; 
     } 
     // tell the system that we handled the event but a further processing is required 
     return false; 

    } 


});