【问题标题】:Date picker shows range years日期选择器显示范围年份
【发布时间】:2020-02-20 00:11:07
【问题描述】:

当我选择我的选择器时,我只想显示从 1900 到 2150 的年份 我的代码有什么问题或缺少什么?

@objc func dateChanged(datePicker: UIDatePicker,field: HoshiTextField){
    let dateFormatter =  DateFormatter()
    dateFormatter.dateFormat = "dd-MM-yyyy"
    let min = dateFormatter.date(from: "01-01-1900")
    let max = dateFormatter.date(from: "01-01-2150")
    datePicker.minimumDate = min
    datePicker.maximumDate = max
    if  self.fechaTxt.isFirstResponder{
        self.fechaTxt.text = dateFormatter.string(from: datePicker.date)
    }
    self.view!.endEditing(true)
}

【问题讨论】:

标签: ios swift xcode


【解决方案1】:

在设置 UIDatePicker 的最小和最大日期时,其他日期仍然可见,只是无法选择。因此,如果您尝试滚动到 1800 年,您的选择器将反弹到您的 minimumValue 1900。

如果您想阻止我们显示超出您的时间范围的日期,恐怕您必须使用 UIPickerView 自己创建它,并用您想要的任意数量的组件填充它。

或者,由于这可能是一个常见问题,我猜其他几个人已经为这种情况创建了一个 pod 或 spm,所以如果您不想重新发明这个轮子,请在互联网上查找替代方案。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-03-30
    • 2010-09-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-08
    • 2018-10-12
    • 2021-09-23
    相关资源
    最近更新 更多