如何在iphone中禁用我的导航栏中的UIpangesture识别器(如果有)?
我有一个应用程序,其中我在导航栏中启用了UIpangesture识别器,用于放置菜单。但我只需要在菜单的基本视图中使用它。当我们要进入详细视图时,我只需要在那里禁用它。有人能帮我找到如何在导航栏中禁用识别器吗如果存在任何东西。我需要首先在导航栏视图中检查它是否已启用,如果已启用,那么我需要禁用它?有人可以指导我吗?在UIPangestureRecongnizer的回调中,您可以检查应用程序的当前状态,即加载了哪个视图,然后相应地显示您的菜单如何在iphone中禁用我的导航栏中的UIpangesture识别器(如果有)?,iphone,ios,ipad,Iphone,Ios,Ipad,我有一个应用程序,其中我在导航栏中启用了UIpangesture识别器,用于放置菜单。但我只需要在菜单的基本视图中使用它。当我们要进入详细视图时,我只需要在那里禁用它。有人能帮我找到如何在导航栏中禁用识别器吗如果存在任何东西。我需要首先在导航栏视图中检查它是否已启用,如果已启用,那么我需要禁用它?有人可以指导我吗?在UIPangestureRecongnizer的回调中,您可以检查应用程序的当前状态,即加载了哪个视图,然后相应地显示您的菜单 - (void)gestureCallback:(UI
- (void)gestureCallback:(UIGestureRecogniser*)gesture{
if(state == firstLevel)
// Show the menu
else
// return without doing anything.
}
具有一个enabled
属性,当它仍然连接到UIView
时,您可以使用该属性来启用/禁用它。这将防止回调完全触发
或者,您可以使用
UIView
的removeGestureRecognizer:
方法临时删除手势识别器,然后重新添加它。我需要检查它是否存在,因为它没有添加到该视图中。如果它存在,我需要禁用它。.是的,在回拨中,您可以检查条件并相应地处理它。如果你发布更多的代码或更好的描述,我可以编辑我的答案。