gpt4 book ai didi

ios - Swift 4 - 按下按钮时的 Action - 循环?

转载 作者:行者123 更新时间:2023-11-28 14:23:23 27 4
gpt4 key购买 nike

嗨,我想在按下按钮时向我的树莓派上的电机发送命令。例如:当我按下按钮时,电机应该运行。它是一个步进电机,所以我想要长敲击和普通敲击命令。普通点击很容易,但长按(重复命令)不起作用。我用长按手势识别器和循环尝试过,但它不起作用这是我的代码。

@objc func motorLongTap(_ sender: UIGestureRecognizer){        
while (sender.state == .began) && (sender.state != .ended){
//send command
}
}

循环不会停止。希望有人能帮助我。最好的问候

编辑:问题已解决。感谢 MadProgrammer 的解决方案

现在是按下操作时获得“循环”的代码。

var buttonTimer:Timer!

@objc func motorLongTap(_ sender: UIGestureRecognizer){
if sender.state == .ended{
buttonTimer.invalide()
}
else sender.state == .began{
buttonTimer = Timer.scheduledTimer(timeInterval: 0.1, target: self, selector: #selector(longTapMotor), userInfo: nil, repeats: true)
}

}
@objc func longTapMotor() {
//send command
}

最佳答案

你的逻辑不正确。试试这个:

@objc func motorLongTap(_ sender: UIGestureRecognizer){        
if sender.state != .ended{
//send command
}
}

关于ios - Swift 4 - 按下按钮时的 Action - 循环?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51778979/

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