2014-02-06 58 views
10

我有两个导航抽屉在任何一方在我的活动。我不需要通过滑动手势打开正确的导航抽屉。如何禁用仅滑动右侧导航抽屉?

如果我使用:

mDrawerLayout.setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_CLOSED) 

锁定轻扫,然后左边和右边的抽屉被锁定。但我想让左侧抽屉检测到滑动手势。我该怎么做呢?

<android.support.v4.widget.DrawerLayout 
    android:id="@+id/drawer_layout" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" > 

    <FrameLayout 
     android:id="@+id/content_frame" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" /> 

    <ListView 
     android:id="@+id/left_drawer" 
     android:layout_width="@dimen/nav_drawer_width" 
     android:layout_height="match_parent" 
     android:layout_gravity="left" /> 

    <ListView 
     android:id="@+id/right_drawer" 
     android:layout_width="@dimen/nav_drawer_width" 
     android:layout_height="match_parent" 
     android:layout_gravity="right" /> 

</android.support.v4.widget.DrawerLayout> 
+1

看到这里http://stackoverflow.com/questions/21233230/how-to-disable-drawer-layout-from-取得它单边/ 21233786#21233786 –

+0

谢谢!你救了我的一天! – DevAndroid

+0

使用相同的函数setDrawerLockMode使用附加参数 mDrawerLayout.setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_CLOSED,findViewById(R.id.right_drawer))取得它; – DevAndroid

回答

23

使用相同的功能setDrawerLockMode有一个额外的参数

mDrawerLayout.setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_CLOSED, findViewById(R.id.right_drawer)); 
+0

我想这一点,如果正确的抽屉是开着的,里面从左侧轻扫,然后左边抽屉也打开。 >> – EpicPandaForce