I don't understand touch screen event
<p>I have the following code:</p>

<pre><code>@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    logArea = (TextView) findViewById(R.id.logArea);
    //Tocco
    logArea.setOnTouchListener(new OnTouchListener() {
    @Override
        public boolean onTouch(View view, MotionEvent event) {
            float x = event.getX();
            float y = event.getY();
            switch (event.getAction()) {
            case MotionEvent.ACTION_DOWN:
                if(erase) {
                    logArea.setText("");
                    counter = 0;
                }
                logArea.append("DOWN: (" + x + ", " + y + ")    ");
                counter++;
                break;
                case MotionEvent.ACTION_MOVE:
                logArea.append("MOVE: (" + x + ", " + y + ")    ");
                counter++;
                break;
                case MotionEvent.ACTION_UP:
                counter++;
                logArea.append("UP: (" + x + ", " + y + ")  Contatore: " + counter);
                erase = true;

                break;
            }

            return true;
        }
    });
}
</code></pre>

<p>Now I run my application and keep still my finger on the screen of the phone. The event perceived is MotionEvent.ACTION_DOWN and also a series of events MotionEvent.ACTION_MOVE. Multiple pairs of points are returned and not only a coordinate pair as I expected.
If I run the application on the simulator is returned only a point and an event MotionEvent.ACTION_DOWN as I expected. Why?
I need necessarily only one point (one in the middle of a finger if possible or close) because I have to read his exact color to do something.
Works on the emulator, not on the device.
What can I do to solve the problem?
Thanks in advance.</p>
