我在 UIDatePicker 模式下遇到了这个奇怪的问题 .countdownTimer
当我在 datePicker View 中添加上/下/左/右约束时,第一次没有注册回调。但是,如果我只添加对齐约束,则回调每次都有效。也许它是一个错误。知道为什么它不起作用吗?
import UIKit
class ViewController: UIViewController {
@IBOutlet weak var datePicker: UIDatePicker!
override func viewDidLoad() {
super.viewDidLoad()
datePicker.datePickerMode = .countDownTimer
datePicker.addTarget(self, action: #selector(datePickerValueChanged(_:)), for: .valueChanged)
}
@objc func datePickerValueChanged(_ sender: UIDatePicker){
print("Selected value \(sender.countDownDuration)")
}
}
最佳答案
好的,从 iOS 7 左右开始,这是 iOS 中一个久为人知的错误。
如果您将以下内容放入 viewDidLoad
中,则可以解决您的情况。 :
DispatchQueue.main.async {
self.datePicker.countDownDuration = self.datePicker.countDownDuration
}
看起来很恶心,也很恶心。
关于ios - UIDatePicker 模式 countDownTimer 值更改回调未第一次调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63011877/