gpt4 book ai didi

swift - 奇怪的日期选择器行为 Xcode,swift 3

转载 作者:行者123 更新时间:2023-11-28 12:26:00 25 4
gpt4 key购买 nike

我当前的项目是一个计时器,它使用日期选择器来设置用户在计时器关闭前想要的时间量(例如 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 秒的值。

如有任何想法和建议,我们将不胜感激,谢谢。

最佳答案

默认情况下,UIDatePicker 将采用当前的second 值进行计算。

timeAmount = (number of minutes selected in picker * 60) + current time second value.

例如:
如果当前时间是 13:40:25(下午 1 点 40 分 25 秒),并且您在日期选择器中选择了一分钟,则 timeAmount 的值在这种情况下为 85

timeAmount = (1*60) + 25

这将解决您的问题。

  1. 转到 Storyboard 并选择 UIDatapicker。导航到属性检查器中的日期选项。 enter image description here

  2. 点击下拉菜单并将其从当前日期更改为自定义enter image description here

  3. 您将看到一个新的文本字段,将当前时间作为自定义日期。 enter image description here

  4. 只需将第二个字段更改为 00。 enter image description here

  5. 立即运行应用程序。现在它会将 0 作为秒的值,您将能够根据您在日期选择器中选择的时间正确地看到秒值。

希望这能解决您的问题。

关于swift - 奇怪的日期选择器行为 Xcode,swift 3,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43384427/

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