【问题标题】:Date Picker looks squashed as input of a Text Field日期选择器看起来像文本字段的输入一样被压扁
【发布时间】:2020-12-19 13:51:51
【问题描述】:

我有一个UITextField,它使用UIDatePicker 作为输入。我将 Date Picker 的样式设置为.inline,但结果不是我所期望的

如您所见,日期选择器中的小时选择器看起来被压扁了。

这是我的代码:

class ViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()

        let datePicker = UIDatePicker()
        datePicker.preferredDatePickerStyle = .inline
        let textField = UITextField(frame: CGRect(origin: view.center,
                                                  size: CGSize(width: 60, height: 30)))
        textField.text = "TEST"
        textField.inputView = datePicker

        self.view.addSubview(textField)
    }
}

这是一个错误吗?我错过了什么吗?

【问题讨论】:

  • 看起来像一个错误。为什么不直接使用.compact 样式并完全删除文本字段?
  • 或者只使用轮子样式。
  • 遇到同样的问题,我使用的是 iOS 14 GM。如果这是一个错误,那么它现在还没有修复令人担忧......
  • @Insleep 我刚刚更改为 .compact。也许这不是预期的使用方式。我希望更多的人会偶然发现同样的事情。

标签: ios swift uikit uidatepicker ios14


【解决方案1】:

试试这个:

if #available(iOS 13.4, *) {
   datePicker.preferredDatePickerStyle = .wheels
}

【讨论】:

  • 但是如何支持旧版本?
  • 这是个大问题。上面的解决方案不会为低于 11.6 的 Xcode 编译。
  • @Shubh 这就是#available 的用途。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-12-06
  • 2014-07-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多