单击按钮执行操作

Perform action on button click

只要您点击按钮,就应该执行操作。松开按钮后,执行的操作将被删除。

我正在使用长按手势,但它不起作用。

let longGesture = UILongPressGestureRecognizer(target: self, action: #selector(long)) 
@objc func long() {
    topImageView.image = originalImage
    topImageView.isHidden = false
    lassoimageView.isHidden = true
    middleImageView.isHidden = true
    overlayImage.isHidden = true
    buttonTap = "Eye"
}

你需要处理状态

@objc func long(_ tap:UILongPressGestureRecognizer) {
    switch(tap.state) {
       case .began:
           // to do
       case .ended:
           // to do
       default: break
    }
}

使用 .touchDown 执行按钮点击操作

// 这将启动您的按钮操作。

button.addTarget(self, action: #selector(start), for: .touchDown)

// 这将结束您的按钮操作。

button.addTarget(self, action: #selector(end), for: .touchUpInside)

在您的代码中,您尚未将手势添加到按钮。像这样:

myButton.addGestureRecognizer(longGesture)

然后你可以像@Sh_Khan提到的那样处理开始和事件。