我有一个应用程序,我在导航栏中启用了UIpangesture识别器,用于放置菜单。但是我需要只在我的菜单的基本视图中工作。当我们要进入详细视图时我只需要在那里禁用它。任何人都可以帮我找出如何在导航栏中禁用识别器,如果有任何东西存在。我需要先在导航栏视图中检查它是否启用如果我需要禁用那个?有人可以指导我吗?
答案 0 :(得分:1)
UIGestureRecognizer具有enabled
属性,您可以使用该属性启用/禁用它,同时它仍然附加到UIView
。这将阻止回调完全解雇。
或者,您可以使用UIView
的{{1}}方法临时删除手势识别器,稍后重新添加。
答案 1 :(得分:0)
在UIPanGestureRecongniser的回调中,你可以检查应用程序的当前状态,即加载了哪个视图,然后相应地显示你的菜单。
- (void)gestureCallback:(UIGestureRecogniser*)gesture{
if(state == firstLevel)
// Show the menu
else
// return without doing anything.
}