Я хочу получить обнаружение gesture fling, работающее в моем приложении для Android.
У меня есть GridLayout, который содержит 9 ImageView s. Источник можно найти здесь: Розетка Grid Grid Layout.
Этот файл я беру от Romain Guy приложение Photostream и только немного адаптировался.
Для простой ситуации щелчка мне нужно только установить onClickListener для каждого ImageView, который я добавляю в качестве основного activity, который реализует View.OnClickListener. Кажется бесконечно сложнее реализовать что-то, что распознает fling. Я полагаю, это потому, что он может охватывать views?
-
Если моя деятельность реализуется
OnGestureListenerЯ не знаю, как установите это как слушатель жестов для представленияGridилиImage, которые я добавить.public class SelectFilterActivity extends Activity implements View.OnClickListener, OnGestureListener { ... -
Если моя деятельность реализуется
OnTouchListener, тогда у меня нетonFlingдоoverride(он имеет два события как параметры, позволяющие мне чтобы определить, Примечательно).public class SelectFilterActivity extends Activity implements View.OnClickListener, OnTouchListener { ... -
Если я создаю пользовательский
View, напримерGestureImageView, который расширяетImageView, я не знаю, как сообщить о действии, что aflingпроизошло из представления. В любом случае, я пробовал это, и методы не вызывались, когда я касался экрана.
Мне действительно нужен конкретный пример этой работы над представлениями. Что, когда и как мне прикрепить этот listener? Мне также нужно иметь возможность обнаруживать отдельные клики.
// 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 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;
}
}
});
Можно ли проложить прозрачный вид поверх верхней части экрана для захвата снимков?
Если я выбираю не inflate мои дочерние образы изображения из XML, я могу передать GestureDetector в качестве параметра конструктора в новый подкласс ImageView, который я создаю?
Это очень простая работа, с которой я пытаюсь получить обнаружение fling для работы: SelectFilterActivity (адаптировано из фотопотока).
Я смотрю на эти источники:
Ничего не работало для меня до сих пор, и я надеялся на некоторые указатели.
Существует 2 импорта, которые должны быть осторожны при выборе того, что оба варианта

