【问题标题】:iOS 12 DatePicker value changed issueiOS 12 DatePicker 值更改问题
【发布时间】:2018-12-14 15:16:08
【问题描述】:

有一个日期选择器,即@IBOutlet。这是我的文本字段的输入视图

myTextField.inputView = 选择器

问题是当我滚动日期选择器时 - 它滚动正常,但文本字段中的值没有改变。无论我尝试更改多少次,文本字段仍然是空的。

最大的问题是这个问题很少“在野外”重现,而且似乎只在 iOS 12 上。我的应用程序的几个用户总是重现这个问题,而其他人即使尝试也看不到它。 日期选择器可能是iOS12问题吗?也许有人知道它可能是什么??

此问题显示在下面的视频中

【问题讨论】:

  • 我们无法在您的代码中发现问题而没有看到它
  • 这个我知道,但是代码没有动,但问题在 iOS 12 发布时开始出现(

标签: ios swift datepicker uidatepicker ios12


【解决方案1】:

您必须捕获选择器的 dateChanged 事件并按照自己的方式设置 textField,例如:

let dateFormatter = NSDateFormatter()

// Call this in the init to setup the dateFormatter
func setupDateFormatter() {
    dateFormatter.dateStyle = NSDateFormatterStyle.MediumStyle
    dateFormatter.timeStyle = NSDateFormatterStyle.NoStyle
}

// Here you catch the dateChanged event and you set the textField text
func datePickerValueChanged(sender:UIDatePicker) {
    dateTextField.text = dateFormatter.stringFromDate(sender.date)
}

【讨论】:

  • 是的,它已经实现并且运行良好。但是当所有其他用户和测试人员即使尝试时也无法解决此问题时,有 3 个用户总是遇到未更新值的问题
猜你喜欢
  • 2014-08-14
  • 2019-03-08
  • 1970-01-01
  • 2019-03-04
  • 1970-01-01
  • 1970-01-01
  • 2021-11-22
  • 2022-12-29
  • 1970-01-01
相关资源
最近更新 更多