Android - обнаружение основных жестов

я давно борются за то, чтобы получить 'бросать' распознавания жестов, работая над своим Android-приложения сегодня.Я смотрел на этих источников;

  • Определить Жесты - Учебник

  • SDK docs

  • Калькулятор Код

Ничего не работала для меня, так далеко, и я надеялся, что некоторые указатели.

то, Что я " GridLayout', который содержит 9 ImageViews. Источником могут быть найдены здесь: " ромэн " Ребята таблицы Макета.

этот файл взять Ромена Парень Photostream приложения и был только слегка адаптированы.

Для простого щелчка ситуации мне нужно только задать onClickListener для каждого ImageView я добавить, чтобы быть основным видом деятельности, который реализует View.OnClickListener. Кажется бесконечно сложнее реализовать то, что признает fling. Я полагаю, это потому, что оно может распространяться на вид?

  • Если моя деятельность реализуетOnGestureListener я не знаю какв качестве жеста для слушателяGrid или Image вид, что ядобавить.

    public class SelectFilterActivity extends Activity implements
    View.OnClickListener, OnGestureListener { ...
    
  • Если моя деятельность реализуетOnTouchListener то у меня нетonFling способ переопределить (два события в качестве параметров позволяет мнечтобы определить, если бросок былпримечательно).

    public class SelectFilterActivity extends Activity implements
    View.OnClickListener, OnTouchListener { ...
    
  • Если я сделаю настраиваемого Представления, как GestureImageView, который расширяет ImageView я не знаю, как сказать, деятельности, что бросать произошло от просмотра. В любом случае, я попытался это и методов не вызывается, когда я коснулся экрана.

я на самом деле надо просто конкретный пример этого, работающих в различных представлениях. Что, когда и как я должен присоединить этот слушатель? Мне нужно, чтобы уметь распознавать отдельные щелчки.

// Gesture detection
mGestureDetector = new GestureDetector(this, new GestureDetector.SimpleOnGestureListener() {

    public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) {
        int dx = (int) (e2.getX() - e1.getX());
        // don't accept the fling if it's too short
        // as it may conflict with a button push
        if (Math.abs(dx) > MAJOR_MOVE && Math.abs(velocityX) > Math.absvelocityY)) {
            if (velocityX > 0) {
                moveRight();
            } else {
                moveLeft();
            }
            return true;
        } else {
            return false;
        }
    }
});

это можно уложить прозрачный вид поверх моего экрана, чтобы захватить бросает?Если я решил не раздувать дитя мое изображение вид из XML-могу ли я сдать GestureDetector в качестве параметра конструктора новый подкласс ImageView, что я создаю?

Это очень простое действие, которое я пытаюсь получить бросать обнаружения работать: SelectFilterActivity (Адаптировано из photostream).

Любой Совет был бы весьма признателен. Прошу прощения, если вопрос отъединенный, пожалуйста, обратитесь за разъяснениями, и я с радостью скажу вам, в особенности то, что я пробовал.

Найдено 12 ответов:

Android - basic gesture detection

http://stackoverflow.com/questions/937313/android-basic-gesture-detection

Посмотреть решение →