5

我有一个viewpager 和一个导航抽屉。两者都在水平滑动时执行操作,但我如何控制哪个负责滑动操作?

我的浏览器:

Fragment[] allPictures = new Fragment[getNrPictures()];
APicturePageAdapter adapter = new APicturePageAdapter(super.getSupportFragmentManager(), allPictures);
vP = (ViewPager) findViewById(R.id.picPage);
vP.setAdapter(adapter);

通过从右向左滑动,我可以浏览图片。工作正常。然后我添加了一个导航抽屉:

<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/drawer_layout"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >

    <LinearLayout
        android:id="@+id/PicturePageContentLayout"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_marginBottom="2dp"
        android:orientation="vertical" >

        .......
    </LinearLayout>

    <LinearLayout
        android:id="@+id/left_drawer_ll"
        android:layout_width="300dp"
        android:layout_height="match_parent"
        android:layout_gravity="start"
        android:background="@android:color/white"
        android:orientation="vertical" >

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="vertical" >

            <TextView
               ... content
            </TextView>

    </LinearLayout>

打开和关闭抽屉工作正常,一切似乎都在工作。但是,当我触摸抽屉并向左滑动时,我希望抽屉自行关闭,而不是让 viewpager 翻转到上一张图片。如何控制谁负责 onTouch 事件?

谢谢你的帮助。

4

1 回答 1

0

我知道的唯一解决方案是使用 droidux 库。

http://www.youtube.com/watch?v=N0HNMK8xewE

于 2013-09-21T12:04:36.977 回答