title: android detect no movement
body: <p>I'm using motion event, action_down, action_move etc, to detect when there is no finger movement but the finger is still on the screen. For instance, the user moves in a vertical line from top of the screen to the bottom and then stops movement without lifting the finger. How do I detect when there is no movement but the finger is still on the screen after the drag/swipe?</p>
  
  <p><strong>EDIT:</strong> What I'm trying to do is count every time I change direction of movement in a vertical direction. And to do that I'm trying to detect when I stop movement against the change of movement. For instance, I move down the screen and then move back up, that counts as two counts. Here is my code, please don't provide me with code as a direct answer but hints or clues so that I can try and figure it out myself (my code might look a bit confusing, I'm just trying out different things):</p>
  
  <p>@Override
      public boolean onTouchEvent(MotionEvent event) {</p>
  
  <pre><code>    switch (event.getAction()) {
      case MotionEvent.ACTION_DOWN:
  
          oldX = event.getX();
          oldY = event.getY();
  
          oldSpeedY = System.currentTimeMillis();
          break;
  
      case MotionEvent.ACTION_MOVE:
          posY = event.getY();
          posSpeedY = System.currentTimeMillis();
  
          float timeElapsed = (posSpeedY - oldSpeedY) / 1000;
          float diffSpeed = posSpeedY - oldSpeedY;
          if (changeOfMovement(posY, oldY)) {
          //if (diffSpeed == 0)
              count += 1;
  
  
          }
  
          break;
  
      case MotionEvent.ACTION_UP:
  
          // count seconds here
          break;
  
      }
  
      Toast.makeText(getApplicationContext(), "Swipe: " + count,
              Toast.LENGTH_SHORT).show();
  
      return false;
  
  }
  
  public boolean changeOfMovement(float posY, float oldY) {
  
      int newY = Math.round(posY);
      double distance = Math.abs(newY - oldY);
  
      oldY = newY;
      //float speed = (float) (distance / time);
      //if (distance &lt; 25)
          //return false;
      //if (speed == 0)
  
          //return true;
  
      if (distance &lt; 25)
  
          return true;
  
      return false;
  }
  </code></pre>