iOS14 UIDatePicker 有一个偏移量

iOS14 UIDatePicker has an offset

在 iPhone SE2 或 iPhone 8 上添加一个 UIDatePicker 和 运行 它,在右侧有一个偏移量。

这是用于添加 UIDatePicker 的代码

override func viewDidLoad() {
    super.viewDidLoad()
    let datePicker = UIDatePicker()
    datePicker.datePickerMode = .date
    datePicker.preferredDatePickerStyle = UIDatePickerStyle.inline
    datePicker.backgroundColor = .red
    view.addSubview(datePicker)
    datePicker.translatesAutoresizingMaskIntoConstraints = false
}

而这个 iOS 它在 iPhone SE2 和 iPhone 11 上的样子(注意 iPhone SE2 右侧的截断)

有人遇到过这个问题吗?任何修复?

您应该能够通过将布局锚点添加到日期选择器的前导和尾随来解决该问题:

    datePicker.translatesAutoresizingMaskIntoConstraints = false
    self.view.addSubview(datePicker)

    datePicker.topAnchor.constraint(equalTo: view.topAnchor,
                                    constant: 0).isActive=true
    datePicker.leadingAnchor.constraint(equalTo: view.leadingAnchor,
                                        constant: 0).isActive=true
    datePicker.trailingAnchor.constraint(equalTo: view.trailingAnchor,
                                         constant: 0).isActive=true