Я пытаюсь запрограммировать приложение, в котором я могу смахивать изображения влево / вправо / ..., обнаруживая жесты пользователем.
У меня есть GridLayout с большим количеством ImageViews, и сам код уже работает; когда я проведу пальцем вверх по изображениям с пустыми пробелами выше, они окажутся там, а исходная позиция будет пустой.
Единственная проблема: приложение распознает только пролистывания, которые сделаны вне самого GridLayout! Поэтому, если я проведу пальцем за пределы сетки, это сработает, но когда я проведу пальцем внутрь сетки, это НЕ сработает!
Кто-то знает, как я могу это исправить?
С наилучшими пожеланиями
Я думаю, что это соответствующие строки кода:
public class MainActivity extends AppCompatActivity implements GestureDetector.OnGestureListener {
GestureDetector gestureDetector;
/
/
в onCreate:
gestureDetector = new GestureDetector(this, this);
/
/
@Override
public boolean onFling(MotionEvent motionEvent1, MotionEvent motionEvent2, float X, float Y) {
if (motionEvent1.getY() - motionEvent2.getY() > 50) {
Toast.makeText(MainActivity.this, "You Swiped up!", Toast.LENGTH_SHORT).show();
/
/
@Override
public boolean onTouchEvent(MotionEvent motionEvent) {
// TODO Auto-generated method stub
return gestureDetector.onTouchEvent(motionEvent);