Вопрос

Я использую детектор жестов, чтобы поймать «броски», и использую флиппер просмотра, чтобы изменить экран, когда это происходит.Некоторые из моих дочерних представлений содержат представления списков.Детектор жестов не распознает пролистывание, если вы проведете пальцем по списку.Но он распознает его, если он находится поверх TextView или ImageView.Есть ли способ реализовать его так, чтобы он распознавал пролистывания, даже если они находятся поверх другого представления с ClickListener?

Это было полезно?

Решение

Спасибо за ваш ответ.Чтобы заставить его работать так, как я хотел, мне нужно было добавить только это:

myList.setOnTouchListener(gestureListener);

для каждого из моих списков.Теперь они правильно распознают горизонтальное смахивание для изменения вида и вертикальное движение для прокрутки списка.

Другие советы

Пример отсюда: http://android-developers.blogspot.com/2009/10/gestures-on-android-16.html

<android.gesture.GestureOverlayView
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/gestures"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"    
    android:gestureStrokeType="multiple"
    android:eventsInterceptionEnabled="true"
    android:orientation="vertical">
<ListView
    android:id="@android:id/list"  
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent"  />
</android.gesture.GestureOverlayView>

Я использовал это руководство, чтобы просмотреть представление наложения жестов в Android.В примере, из которого это взято, ListView использует этот GestureOverlayView для прокрутки списка.

Есть еще одно замечательное решение android-journey.blogspot

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top