UILongPressGestureRecognizer 和 UITapGestureRecognizer
UILongPressGestureRecognizer and UITapGestureRecognizer
我对 Swift 很陌生,我对区分这两个按钮的手势的潜力很着迷。
我正在 xCode 中编写我的第一个应用程序,我即将得出结论。作为最后一步,我想根据长按或点击为按钮实现两种不同的操作。
我按如下方式构建了应用程序。我有几个按钮连接到一个 IBAction 并使用标签区分它们。
来到我需要长按操作的两个按钮之一的标签,我不知道如何继续。
你有什么建议吗?
非常感谢
func longTap() {
if (resultDisplay.text != ""){
storedVariableA = String(result)
eraseAll()
}
}
else if (sender.tag == 20) {
let longPressGesture = UILongPressGestureRecognizer(target: self, action: #selector(self.longTap(_:)))
longPressGesture.minimumPressDuration = 2
sender.addGestureRecognizer(longPressGesture)
}
您可以在 @IBAction
中检查您在情节提要中或以编程方式提供的标签,请检查以下代码。
@IBAction func action(_ sender: UIButton) {
if sender.tag == 22 { // check for your desired tag instead of "22"
// add longpress gesture. on sender // sender represents your button.
let longPressGesture = UILongPressGestureRecognizer(target: self, action: #selector(self.handleLongPressGesture(_:)))
longPressGesture.minimumPressDuration = 2 // mention minimum press duration you want user to press.
sender.addGestureRecognizer(longPressGesture)
} else {
}
}
我对 Swift 很陌生,我对区分这两个按钮的手势的潜力很着迷。
我正在 xCode 中编写我的第一个应用程序,我即将得出结论。作为最后一步,我想根据长按或点击为按钮实现两种不同的操作。
我按如下方式构建了应用程序。我有几个按钮连接到一个 IBAction 并使用标签区分它们。
来到我需要长按操作的两个按钮之一的标签,我不知道如何继续。
你有什么建议吗? 非常感谢
func longTap() {
if (resultDisplay.text != ""){
storedVariableA = String(result)
eraseAll()
}
}
else if (sender.tag == 20) {
let longPressGesture = UILongPressGestureRecognizer(target: self, action: #selector(self.longTap(_:)))
longPressGesture.minimumPressDuration = 2
sender.addGestureRecognizer(longPressGesture)
}
您可以在 @IBAction
中检查您在情节提要中或以编程方式提供的标签,请检查以下代码。
@IBAction func action(_ sender: UIButton) {
if sender.tag == 22 { // check for your desired tag instead of "22"
// add longpress gesture. on sender // sender represents your button.
let longPressGesture = UILongPressGestureRecognizer(target: self, action: #selector(self.handleLongPressGesture(_:)))
longPressGesture.minimumPressDuration = 2 // mention minimum press duration you want user to press.
sender.addGestureRecognizer(longPressGesture)
} else {
}
}