我在想,如果你在手势识别器的initWithTarget:action:
方法中将目标分配为self
,那么会导致循环保留吗?因为self
将保留self.gestureRecognizers
中的识别器,而且可能手势识别器也会在initWithTarget:action
中保留自己。
以下是否为其解决方案?
__weak VRDrawer* weakSelf = self;
UIGestureRecognizer* tapRec = [[UITapGestureRecognizer alloc] initWithTarget:weakSelf
action:@selector(handleTap:)];
[self retainCount]
应该很简单,以检查它是否发生了变化。 - Geoff HackworthretainCount
的输出是不可靠的吗?你也知道在 ARC 下不能使用它,对吧?而且,如果你想知道,__weak
表示我正在使用 ARC。 - MedaretainCount
。 - vikingosegundo