【发布时间】:2023-03-16 14:05:01
【问题描述】:
我当前的项目是一个计时器,它使用日期选择器来设置用户想要在计时器关闭之前的时间量(比如 1 分钟、6 小时和 2 分钟等)。问题在于日期选择器认为已设置的时间量。下面是我用来设置时间的代码。
@IBOutlet weak var datePicker: UIDatePicker!
var timeAmount:Double = 0
@IBAction func startButton() {
timeAmount = Double(datePicker.countDownDuration)
let trigger = UNTimeIntervalNotificationTrigger(timeInterval: timeAmount, repeats: false)
}
这里可以看出函数 startButton 将 timeAmount 的值设置为日期选择器设置的时间量。此 timeAmount 值随后在本地通知中用作时间。
问题在于 datePicker.countDownDuration 永远不会正确。如果设置为一分钟,那么 timeAmount 可能会返回 99 秒、62 秒、67 秒等值。它只是完全随机的。
也许我不完全理解 .countDownDuration 功能的工作原理,但是从我所阅读的所有内容来看,这应该返回 60 秒的值。
非常感谢您对此事的任何想法和建议,谢谢。
【问题讨论】:
标签: swift time timer datepicker uilocalnotification