selfジェスチャーレコグナイザーの方法のように ターゲットを割り当てるinitWithTarget:action:と、循環保持が発生するのではないかと考えていました。selfはレコグナイザを に保持するのでself.gestureRecognizers、ジェスチャ レコグナイザは に self を保持することもできinitWithTarget:actionます。
以下はそれに対する解決策になりますか?
__weak VRDrawer* weakSelf = self;
UIGestureRecognizer* tapRec = [[UITapGestureRecognizer alloc] initWithTarget:weakSelf
action:@selector(handleTap:)];