UIDatePicker倒数计时器模式在Xcode 10.3中未返回正确的时间

时间:2019-08-03 09:58:24

标签: swift countdown uidatepicker

我正在一个项目中,用户可以在倒数模式中从getSocketevent() { var self = this; this.socket.on('data', (data) => { this.child.getprod(); // call getprod this.notify.emit(data) }); } 中选择一个时间间隔(HH:mm),并使用该时间间隔要触发通知。

我在情节提要中创建了UIDatePicker,并在 Attributes Inspector 中将 Mode 设置为 Count Down Timer

>

问题是当我获得datePicker的当前值时,该值永远不会正确。

例如,如果用户选择1分钟,则我会得到70到110之间的随机值,但不会得到60! 可能性如何? (每次选择都会出现问题)

这是我获得当前值的方式:

UIDatePicker

出于测试目的,我用

进行打印
timePicker.countDownDuration

也许存在错误或我不知道的东西? (当然有)

我尝试将 timePicker.countDownDuration.description 中表示的值转换为字符串a,然后在UIDatePicker中将其重新转换,但是如果有更好的方法,那就太好了。

1 个答案:

答案 0 :(得分:2)

好了,问题解决了,也许是XCode的错误。

当您从情节提要构建datepicker并将其模式参数设置为Count Down Timer时,会发生问题。 要解决此问题,只需不要在情节提要中设置datepickercount down timer的模式,而是需要通过编程方式设置模式

timepicker.datePickerMode = .countDownTimer

这样做,问题就解决了