所以我有这个问题,我需要停止使用UIButton发生循环。这个问题是while循环似乎阻止了UIButton被按下。根据我所研究的内容,你需要使用一个与UIButton正在更新的线程不同的线程,但是,尽管我已经尝试过,但我没有成功。以下是被阻止的while循环,我将不胜感激任何帮助解决问题。谢谢。
timer = Timer.scheduledTimer(timeInterval: 1, target: self, selector: #selector(ViewController.counter), userInfo: nil, repeats: true)
func counter() {
seconds -= 1;
label.text = String(seconds) + " Seconds"
if(seconds == 0) {
timer.invalidate()
audioPlayer.play()
while(UIScreen.main.brightness <= CGFloat(0.5)) {
UIScreen.main.brightness += 0.01;
}
}
}
包含UIButton的函数
@IBAction func stop(_ sender: Any) {
timer.invalidate()
seconds = 30
sliderOutlet.setValue(30, animated: true)
label.text = "30 Seconds"
sliderOutlet.isHidden = false
startOutlet.isHidden = false
audioPlayer.stop()}