我用Xcode 13和iOS 15编译了我的应用程序,我注意到它们UIDatePicker
正在正确对齐。
您可以看到我的故事板已正确设置约束:
这个 UI 元素运行良好,即使我在运行 iOS 15 的设备上下载了我的应用程序的 App Store 版本,它也能正确呈现。它只是用 Xcode 13 编译它,乱七八糟的。
还有其他人遇到这个问题吗?
我用Xcode 13和iOS 15编译了我的应用程序,我注意到它们UIDatePicker
正在正确对齐。
您可以看到我的故事板已正确设置约束:
这个 UI 元素运行良好,即使我在运行 iOS 15 的设备上下载了我的应用程序的 App Store 版本,它也能正确呈现。它只是用 Xcode 13 编译它,乱七八糟的。
还有其他人遇到这个问题吗?
紧凑型日期选择器 (UIDatePicker) 的旧行为左对齐(使用 Xcode 12 + iOS 14),但现在使用 Xcode 13 右对齐。
我在使用 Xcode 13 时遇到了同样的问题,并在这里找到了解决方案。
if #available(iOS 15.0, *) {
// make date picker align to left in Xcode 13 with iOS 15
datePicker.subviews.first?.semanticContentAttribute = .forceRightToLeft
}
只是对此的快速跟进——我通过反馈助手提交了这个问题,苹果告诉我这是预期的行为:
工程提供了有关此问题的以下信息:
这是故意的,而不是错误。我们将 UIDatePicker 药丸右对齐以实现紧凑。请注意,如果您想在 iOS 15 上更改 UIDatePicker 控件的对齐方式,我们现在支持 UIControl.contentHorizontalAlignment 来做到这一点。
所以正确的解决方案如下:
datePicker.contentHorizontalAlignment = .left