я хочу получить fling
в моем приложении для Android работало распознавание жестов.
То, что у меня есть GridLayout
, содержит 9 ImageView
с. Источник может быть найден здесь: Romain Guys's Grid Layout .
Этот файл я взял из приложения Фотопотока Ромена Гая и только слегка адаптирован.
Для простой ситуации щелчка мне нужно только установить 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 (адаптировано из фотопотока) .
Я смотрел на эти источники:
До сих пор у меня ничего не получалось, и я надеялся на несколько указателей.