我要显示DatePicker
在警报视图或操作表视图中,但我找不到任何资源来执行此操作。
我想要以下视图。
谢谢您的帮助
你想要的实际上是被苹果劝阻的(根据这个答案 https://stackoverflow.com/a/26342100/8697793)。这可能就是您自己找不到任何示例的原因。
这是一个可能的解决方案:
struct ContentView: View {
@State var selectedDate = Date()
static let formatter: DateFormatter = {
let formatter = DateFormatter()
formatter.setLocalizedDateFormatFromTemplate("yyMMddhhmm")
return formatter
}()
var body: some View {
VStack {
Text("Selected date: \(selectedDate, formatter: Self.formatter)")
Button("Show action sheet") {
self.showDatePickerAlert()
}
}
}
func showDatePickerAlert() {
let alertVC = UIAlertController(title: "\n\n\n\n\n\n\n\n\n", message: nil, preferredStyle: .actionSheet)
let datePicker: UIDatePicker = UIDatePicker()
alertVC.view.addSubview(datePicker)
let okAction = UIAlertAction(title: "OK", style: .default) { _ in
self.selectedDate = datePicker.date
}
alertVC.addAction(okAction)
let cancelAction = UIAlertAction(title: "Cancel", style: .cancel)
alertVC.addAction(cancelAction)
if let viewController = UIApplication.shared.windows.first?.rootViewController {
viewController.present(alertVC, animated: true, completion: nil)
}
}
}
这使用了"\n\n\n\n\n\n\n\n\n"
黑客从这个答案 https://stackoverflow.com/a/56607279/8697793.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)