swift - 可能的错误?最小日期 UIDatePicker Swift

标签 swift uidatepicker

我在日期选择器中设置最小日期,如下所示:

override func viewDidLoad() {
        super.viewDidLoad()

        datePicker.minimumDate = NSDate()
}

这确实可以防止用户回滚日期。用户可以回滚日期拨盘,但它只会快速返回到当前日期。问题是,当发生这种情况时,日期时间将设置为午夜,而不是任何和所有 future 更改的当前时间,并且它还会执行日期更改时运行的事件。当涉及到我的代码和 UI 中的 slider 时,这是一个问题。它认为日期改变了,但它没有改变,是的,它反弹了,但此时已经太晚了,假设日期改变了,我的代码就会运行。如何防止用户完全回滚拨号?

重现步骤:

1) 设置最短日期,如上所示。

2) 设置日期更改事件

3) 设置事件为 print(datePicker.date)

4) 向前滚动拨号

5) 将拨号盘向后滚动到当前日期之后。

6) 向前滚动拨号

请注意,从现在开始,时间将永久设置为午夜。

最佳答案

快速修复/解决方法是在日期更改事件函数中设置 datePicker.date = NSDate()。

关于swift - 可能的错误?最小日期 UIDatePicker Swift,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33680869/

相关文章:

swift - didSelectRowAtIndexPath 仅在嵌入容器 View 时长按才起作用

swift - 如何在 Swift 中结合 NavigationController 的两个 ViewController 之间切换

ios - 如何查明本地通知的后台操作是否在 iPhone 或 Apple Watch 上得到应答

ios - 2 UITextField 和 1 UIDatePicker : How can I let UIDatePicker know where to display the . 日期

jquery - 使用 Datepicker 中的 altField 更新多个输入

ios - 如何在 swift 中将 Objc c Enum 转换为 NSValue

ios - 在 iOS 日期选择器中设置最小和最大月份,但应该更新选择器 View

iPhone UIDatePicker 在横向模式下?

iphone - 设置 UIDatePicker 日期时崩溃

ios - 更改选择时的默认行背景颜色