2011-12-02 92 views
0

我有一个看似简单的问题,我需要帮助。我有一个按钮。我想要它,所以当我点击按钮时,它会增加一个。我也希望当我按住相同的按钮约2秒时,它会从总数中删除一个。我唯一遇到的问题是运动事件部分。我一直在尝试ACTION_UP和ACTION_DOWN,但没有运气。是否有捷径可寻?Android运动事件按住按钮

switch (event.getAction()) 
     {  
      case MotionEvent.ACTION_DOWN: 
      { 
       total ++; 
       return true; 
      } 

      case MotionEvent.ACTION_UP: 
      { 
       if(total >0){ 
       total--; 
       } 
       return true; 
      } 
     } 

感谢您的帮助!

回答

3

为什么不使用按钮的setOnClickListenersetOnLongClickListener

这种方法的唯一限制是如果我没有记错的话,你不能设置超过1.5秒的超时值。

如果你坚持两秒钟(或其他值),那么我想你可以使用onTouchListener并自己记录按下的时间。在这种情况下,MotionEvent的getDownTime可能会引起您的兴趣。

+0

谢谢先生。它工作完美。我不知道你可以添加多个动作侦听器到一个按钮! – user1076755

+0

很高兴为您服务!请考虑接受我的回答作为您的问题的答案,因为这可以帮助其他人解决类似的问题。 :) –

+0

我再次感谢! – user1076755