如何将秒列添加到UIDatePicker
?
我目前正在显示这个:
有了这个UIViewRepresentable
在 SwiftUI
struct DurationPicker: UIViewRepresentable {
@Binding var duration: TimeInterval
func makeUIView(context: Context) -> UIDatePicker {
let datePicker = UIDatePicker()
datePicker.datePickerMode = .countDownTimer
datePicker.addTarget(context.coordinator, action: #selector(Coordinator.updateDuration), for: .valueChanged)
return datePicker
}
func updateUIView(_ datePicker: UIDatePicker, context: Context) {
datePicker.countDownDuration = duration
}
func makeCoordinator() -> Coordinator {
Coordinator(self)
}
class Coordinator: NSObject {
let parent: DurationPicker
init(_ parent: DurationPicker) {
self.parent = parent
}
@objc func updateDuration(datePicker: UIDatePicker) {
parent.duration = datePicker.countDownDuration
}
}
}
这是我的视图代码供参考
struct ContentView: View {
@Binding var interval:TimeInterval
init( interval: Binding<TimeInterval> = .constant(0) ) {
_interval = interval
}
var body: some View {
NavigationView {
VStack {
Text("Hello, world!")
.padding()
DurationPicker(duration: $interval)
NavigationLink(destination: DetailView()) {
Text("Show Detail View")
}
}
}
}
}
我不知道如何添加秒列,即使 iOS 上的官方时钟应用程序显示一个。