title: How to distinguish between ACTION_UP and actual click via onTouchListener?
body: <p>I have an <code>ImageView</code> with an icon. I want to be able to:<br><br>
  <strong>1</strong>. Change the icon on hover (meaning - change to icon #2 on <strong>ACTION_DOWN</strong> but also change it back to icon #1 on <strong>ACTION_UP</strong>)<br>
  <strong>2</strong>. Trigger an onClick function (meaning - call another function when the <code>ImageView</code> was <strong>clicked</strong>)</p>
  
  <p>This is how my <code>onTouch</code> looks like right now:</p>
  
  <pre><code>@Override
  public boolean onTouch(View v, MotionEvent event) {
  
      switch (event.getAction()) {
          case MotionEvent.ACTION_DOWN:
              // CHANGE TO IMAGE #2
              break;
  
          case MotionEvent.ACTION_UP:
              // CHANGE TO IMAGE #1
              break;
      }
  
      return true;
  }
  </code></pre>
  
  <p>The problem is - I can't know when the user pressed my <code>ImageView</code> and then left its area <em>while still pressing down</em>. I hope I explaied it well. I mean that <strong>ACTION_UP</strong> does not always imply that the user intended to <strong>click</strong> the View. How can I know for sure when the <code>ImageView</code> was <strong>clicked</strong> and not just hovered (and still be able to change the icon on hover)?</p>