7

有没有办法撤消requireGestureRecognizerToFail。

我像这样使用 requireGestureRecognizerToFail 在两个 UIGestureRecognizers 之间建立了依赖关系。

UITapGestureRecognizer* tgr1 = [UITapGestureRecognizer alloc] initWithTarget ...];
UITapGestureRecognizer* tgr2 = [UITapGestureRecognizer alloc] initWithTarget ...];
[tgr1 requireGestureRecognizerToFail: tgr2];
... 
// later in the code
[tgr2 release];

如何使用 tgr1 注销 tgr2?tgr2 是否实际发布或 tgr1 现在有参考?如果不是,释放 tgr2 会导致问题吗?

谢谢

4

1 回答 1

3

你的问题:

如何使用 tgr1 注销 tgr2?

你有很多选择。

  1. 您可以将其从视图中移除。
  2. 您可以禁用 tgr2。
  3. 为了保持这两个识别,你需要创建一个新的识别器,它需要失败并添加它,我不知道如何只删除它们之间的依赖关系,也不知道是否有办法。

tgr2 是否实际发布或 tgr1 现在有参考?

当您使用 tgr2 添加到 tgr1 requireGestureRecognizerToFail 时,tgr2 不会增加保留计数。

如果不是,释放 tgr2 会导致问题吗?

不,它不会引起问题,只是 tgr2 总是会失败,它会调用 tgr1

于 2012-04-12T19:46:33.733 回答