处理导航抽屉内的 ViewPager 滑动

Posted

技术标签:

【中文标题】处理导航抽屉内的 ViewPager 滑动【英文标题】:Handle ViewPager swipe inside Navigation Drawer 【发布时间】:2015-12-22 15:58:14 【问题描述】:

我在导航抽屉中使用 ViewPager,当我想滑动到 ViewPager 中的下一个选项卡时遇到问题。滑动在打开导航抽屉的方向上起作用,但在关闭导航抽屉的方向上不起作用。

这意味着我通常可以向“右”方向滑动到 ViewPager 页面,但是当我想向“左”滑动时,NavigationDrawer 会拦截触摸事件并自行关闭。

如果用户在没有水平滚动的内容上滑动,我仍然希望能够关闭导航抽屉。我怎样才能完成这样的事情?谢谢。

【问题讨论】:

【参考方案1】:

如果您不想关闭您的ViewPager,请使用View.requestDisallowInterceptTouchEvent(true);,请在 Action_Up 之后立即调用此View.requestDisallowInterceptTouchEvent(false);

它的作用是防止父级监听或拦截触摸事件。

【讨论】:

以上是关于处理导航抽屉内的 ViewPager 滑动的主要内容,如果未能解决你的问题,请参考以下文章

如何在 View Pager 中使用滑动抽屉?

使用 viewpager 实现滑动抽屉,滑动抽屉位于 viewpager 上

带有嵌套片段的导航抽屉 (ViewPager)

如何使用导航抽屉和viewpager/viewpager2在java中制作android应用程序

带有导航抽屉的片段中的 ListView 和 ViewPager

如何实现一个滑动整个活动内容的 Android 导航抽屉?