iOS14 UIDatePicker 有一个偏移量

问题描述

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

这是用于添加 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 右侧的截线)

enter image description here

有人遇到这个问题吗?有什么解决办法吗?

解决方法

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

    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