我有这个正常UIDatePicker(对不起,它不是英文,请忽略):

但问题是它只在我按下日期选择器时出现:

而且我想知道如何仅使用代码显示第一张图像中的日期选择器(它用模糊效果覆盖所有屏幕),因此用户无需按日期选择器来显示日期选择器。谢谢。
如下图所示,如果您输入日期“2023 年 1 月 11 日”,它会显示日期选择器。我想要实现的是在其他地方有一个按钮,当单击该按钮时,自动显示此日期选择器。
有谁知道是否有办法实现它?
DatePicker("Jump to", selection: $date, in: dateRange, displayedComponents: [.date])
Run Code Online (Sandbox Code Playgroud)
以下是对@rob mayoff 答案的测试。我仍然不明白为什么它还不起作用。
我使用 iPhone 14 和 iOS 16.2 模拟器在 Xcode 14.2 以及设备上进行了测试。我注意到,虽然被triggerDatePickerPopover()调用,但它永远无法到达button.accessibilityActivate()。
import SwiftUI
struct ContentView: View {
@State var date: Date = .now
let dateRange: ClosedRange<Date> = Date(timeIntervalSinceNow: -864000) ... Date(timeIntervalSinceNow: 864000)
var pickerId: String { "picker" }
var body: some View {
VStack {
DatePicker(
"Jump to",
selection: $date,
in: dateRange,
displayedComponents: [.date]
)
.accessibilityIdentifier(pickerId)
Button("Clicky") {
triggerDatePickerPopover() …Run Code Online (Sandbox Code Playgroud)