NavigationDrawerのOpenがViewPagerのスワイプと被ってるので、NavigationDrawerのジェスチャー処理を無効にしようと思ったのですが、最初はやりかたがわからなくて、DrawerLayoutクラスを継承してOnTouch辺りを強制的にぐりぐりしようかとおもったけど、もっと簡単にやる方法があったので助かった。
mDrawerLayout.setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_CLOSED);
DrawerLayoutクラスにsetDrawerLockModeでDrawerLayout.LOCK_MODE_LOCKED_CLOSEDを設定すると期待していた動きになります。
ちなみに、このフラグは他にも
デフォルトの値、ジェスチャーでOpen,Closeする。
LOCK_MODE_UNLOCKED
ジェスチャーによってOpenしない。
LOCK_MODE_LOCKED_CLOSED
ジェスチャーでOpenしない上、クローズもしない。上のやつだと外部タップで自動で閉じる。
LOCK_MODE_LOCKED_OPEN
ということらしいです。
やっぱり、NavigationDrawerのジェスチャーはOFFにしていたほうが気持ちよく操作できますね。
No comments:
Post a Comment