Направление Touch - PullRequest
       22

Направление Touch

2 голосов
/ 19 июня 2011

У меня есть GirdView, и у меня есть onTouchListener, я хочу получить направление, когда кто-то проводит пальцем по экрану, я могу легко двигаться вправо и влево, но я также хочу подниматься и опускаться .

Но моя проблема в этом ..

float currentX;
        float currentY;

        @Override
        public boolean onTouch(View v, MotionEvent event) {
                float x = event.getX();
                float y = event.getY();

                switch(event.getAction()) {
                case MotionEvent.ACTION_DOWN:
                    Log.d("Showpatch", "Down Triggered " + x + ", " + y);
                    currentX = x;
                    currentY = y;
                    break;

                case MotionEvent.ACTION_UP:
                    Log.d("Showpatch", "Up Triggered" + x + ", " + y);

                    Log.d("Showpatch", "Testing Left... " + x + ", " + y);
                    if (currentX > x) {
                        Log.d("Showpatch", "Moved Left");
                        return false;
                    }

                    Log.d("Showpatch", "Testing Right... " + x + ", " + y);
                    if (currentX < x) {
                        Log.d("Showpatch", "Moved Right");
                        return false;
                    }

                    Log.d("Showpatch", "Testing Down... " + x + ", " + y);
                    if (currentY < y) {
                        Log.d("Showpatch", "Moved Down");
                        return false;
                    }

                    Log.d("Showpatch", "Testing Up... " + x + ", " + y);
                    if (currentY < y) {
                        Log.d("Showpatch", "Moved Up");
                        return false;
                    }

                    break;
                }


            return false;
        }

Как я уже сказал, он перемещается влево и вправо без проблем, но он никогда не обнаруживает вверх или вниз, потому что запускает влево / вправо, прежде чем попадает в операторы вверх / вниз, если только вы не двигаете пальцем точно вверх и вниз. не работает ...

Есть ли способ попасть туда, где пользователь проводит вверх или вниз?

Любая помощь очень ценится, спасибо.

1 Ответ

2 голосов
/ 19 июня 2011

Я верю, что слушатель жестов может помочь вам в этом, он был представлен в 1.6

http://developer.android.com/resources/articles/gestures.html

веселит Tobias

...