gpt4 book ai didi

ios - swift 3 : UITapGestureRecognizer Not Firing

转载 作者:行者123 更新时间:2023-11-28 12:36:11 29 4
gpt4 key购买 nike

我不确定为什么,但我的 UITapGestureRecognizer 没有正确触发。事实上,它根本没有开火。我正在尝试让一个功能在点击图像时运行。

关于设置的信息:

  • 不使用 Storyboard,以编程方式加载所有内容
  • 我加载它的 View 也有一个 UICollectionView

好的,代码如下:

UIImageView 声明如下:

let backButtonIcon: UIImageView = {
let bbi = UIImageView()
bbi.image = UIImage(named: "backIcon")
bbi.translatesAutoresizingMaskIntoConstraints = false
bbi.layer.zPosition = 2
return bbi
}()

然后我将其添加到 View 中:

view.addSubview(backButtonIcon)

将点击功能添加到我正在使用的 UIImageView:

let tapBackButton = UITapGestureRecognizer(target: self, action: #selector(backButtonPressed))
backButtonIcon.isUserInteractionEnabled = true
backButtonIcon.addGestureRecognizer(tapBackButton)

最后,这是我正在尝试运行的函数,目前只是一个简单的打印:

func backButtonPressed(sender: UITapGestureRecognizer) {
print("Go Back Pressed")
}

更新:

我已经尝试添加:

 bbi.isUserInteractionEnabled = true

还有:

backButtonIcon.isUserInteractionEnabled = true

更新 2:

我创建了另一个空白 View 并完全按照此处使用的代码进行了操作。

会不会和 UICollectionView 有关系?

我将 UICollectionView zPosition -1 和 UIImageView zPosition 设置为 1,但遗憾的是这也不起作用。

最佳答案

ImageView 默认忽略用户事件。通常,您仅使用 ImageView 来在您的界面中呈现视觉内容。如果您希望 ImageView 也处理用户交互,请将其 isUserInteractionEnabled 属性的值更改为 true。这样做之后,您可以附加手势识别器或使用任何其他事件处理技术来响应触摸事件或其他用户启动的事件。

来源:https://developer.apple.com/reference/uikit/uiimageview

关于ios - swift 3 : UITapGestureRecognizer Not Firing,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40746769/

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