gpt4 book ai didi

android - 我如何在 Android DrawerLayout 上请求 DisallowTouchEvents

转载 作者:太空宇宙 更新时间:2023-11-03 11:15:35 24 4
gpt4 key购买 nike

我有一个实例,我的 Activity 中需要一个 GestureDetector 来拦截水平 throw 。此 Activity 也恰好包含一个 DrawerLayout

我遇到的问题是 DrawerLayout 拦截了所有触摸事件,以至于我什至不能 requestDisallowInterceptTouchEvents。即使在 Activity 中,我似乎也无法触及以触发该调用。

我希望抽屉在关闭时处理从边缘滑动,在打开时处理从任何地方滑动,就像它应该做的那样。但是我需要我的 Activity 能够在抽屉关闭时拦截其他地方的触摸事件。

最佳答案

您可以使用标志。 DrawerListener 上有一个方法onDrawerSlide,当您的抽屉位置发生变化时调用该方法,即抽屉正在运行以打开或关闭自身。您可以在此方法中设置一个标志,指示抽屉正在运行。然后,在 OnGestureListener 的 onFling 方法中,通过检查标志来显示抽屉是否正在运行。如果它没有运行,你可以在 onFling 方法中做任何你想做的事情,如果没有,什么都不做。

希望对你有帮助

http://developer.android.com/reference/android/support/v4/widget/DrawerLayout.DrawerListener.html#onDrawerSlide(android.view.View, float)

关于android - 我如何在 Android DrawerLayout 上请求 DisallowTouchEvents,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17329458/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com