DrawerLayout有两个抽屉:右边一个"跳跃"什么时候打开一个?

时间:2015-02-05 21:15:45

标签: android drawerlayout

我的应用程序有一个DrawerLayout,其中有两个抽屉,一个在左侧用于导航,另一个在右侧用于通知。当应用程序进行冷启动并向左滑动抽屉打开时,右侧抽屉从屏幕的最左侧跳到右侧。

看起来像这样:http://i.imgur.com/mhoJ7MZ.gifv

如视频中所示,我尝试使用DrawerLayout的{​​{1}}和isDrawerOpen方法尝试查看它是否确实认为正确的抽屉是否打开(如果不是因为当左边的抽屉被打开时,它似乎正在“关闭”抽屉,但是我没有从中得到任何有用的东西。

是什么导致奇怪的跳跃?

我的活动的XML在下面,完整的代码是here

isDrawerVisible

1 个答案:

答案 0 :(得分:8)

问题来自android:visibility="gone"上的LinearLayout元素 - 出于某种原因,如果视图显示与否,可见性设置与DrawerLayout的逻辑冲突,所以它试图隐藏它。

从XML中取出它会导致一切看起来都一样(因为DrawerLayout查看layout_gravity以确定哪些子视图是抽屉并隐藏它们本身)并且没有奇怪的跳跃。 / p>