Взаимодействие с ViewPager в SlidingUpPanel
Я пытаюсь использовать SlidingUpPanel из umano и сделать слайдер ViewPager.
Однако при попытке прокрутки влево и вправо ViewPager не двигается. Похоже, что сенсорные события перехватываются SlidingUpPanel.
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<com.sothree.slidinguppanel.SlidingUpPanelLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/slider_layout"
android:layout_gravity="bottom">
<!-- Top Panel -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent" >
</LinearLayout>
<!-- Sliding Panel -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<android.support.v4.view.ViewPager
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/pager">
</android.support.v4.view.ViewPager>
</LinearLayout>
</com.sothree.slidinguppanel.SlidingUpPanelLayout>
</RelativeLayout>
1 ответ
Пытаться:
- Используйте метод setDragView для ViewPager.
- Используйте setEnableDragViewTouchEvents, чтобы dragview / ViewPager мог иметь свои собственные сенсорные события.
В качестве альтернативы, создайте отдельный View отдельно от ViewPager, который предназначен для перетаскивания, и соответственно установите DragView в этот View, ViewPAger должен получать сенсорные события отдельно и может обрабатывать их. (последнее, как я это делаю и работает с другим макетом)