ios - 在 SwiftUI `DatePicker` 中点击日期时如何捕获?
解决方案
SwiftUI 2
您可以使用onChange
:
struct ContentView: View {
@State var selectedDate = Date()
var body: some View {
Form {
DatePicker("Date", selection: $selectedDate)
.onChange(of: selectedDate) {
print($0)
}
}
}
}
SwiftUI 1
改用onReceive
:
import Combine
import SwiftUI
struct ContentView: View {
@State var selectedDate = Date()
var body: some View {
Form {
DatePicker("Date", selection: $selectedDate)
.onReceive(Just(selectedDate)) {
print($0)
}
}
}
}
请注意,onReceive
在初始化视图时也会触发。