问题描述
添加一个 UIDatePicker 并在 iPhone SE2 或 iPhone 8 上运行它,在右侧有一个偏移量。
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