Обнаружение жестов броска на макете сетки
я хочу сделать fling обнаружение жестов работает в моем приложении для Android.
у меня есть GridLayout, который содержит 9 ImageViews. Источник можно найти здесь:раскладка сетки Romain Guys.
этот файл я беру от Ромена Гая приложение 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Я не знаю, как сказать, что деятельностьflingпроизошло из вида. В любом случае, я попробовал это, и методы не были вызваны, когда я коснулся экрана.
мне действительно просто нужен конкретный пример этой работы по всем видам. Что, когда и как я должен приложить это 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'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;
}
}
});
можно ли наложить прозрачный вид поверх моего экрана, чтобы захватить броски?
если я не хочу inflate мои дочерние представления изображений из XML могу ли я передать GestureDetector как параметр конструктора для нового подкласса ImageView что я создаю?
это очень простая деятельность, которую я пытаюсь получить fling обнаружение для работы:SelectFilterActivity (Адаптировано из фотопотока).
я смотрел на эти источники:
ничего не работает для меня до сих пор, и я надеялся на некоторые советы.
Comments