gpt4 book ai didi

ios - UIGestureRecognizer 的内存管理

转载 作者:行者123 更新时间:2023-12-01 19:19:34 25 4
gpt4 key购买 nike

这里给出一个例子,(使用 ARC )

        UITapGestureRecognizer *tapGesture = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(onTap:)];

[subView1 addGestureRecognizer:tapGesture ];
[subView2 addGestureRecognizer:tapGesture];

这是问题所在:

subView1 不会响应 tapGesture ,但 subView2 会。

如果我们从 subview2 中删除 tapGesture,subView1 将起作用。

在内存管理方面内部发生了什么?为什么不设计使上述代码工作?

最佳答案

我很确定 iOS 中包含的标准手势识别器一次只能附加到一个 View 。我找不到任何明确说明的内容,但如果您查看 UIGestureRecognizer类(class)有一个view具有此描述的属性:

The view the gesture recognizer is attached to. (read-only)



所以我的猜测是 addGestureRecgnizer:如果 reconizer 已经附加到 View ,将取消附加它。

关于ios - UIGestureRecognizer 的内存管理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10967327/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com