我有以下选择器选择事件应多久发生一次:
struct RecurrenceSelector: View {
@State var interval = 1
var body: some View {
NavigationView {
Form {
Section {
Picker("Every",selection: $interval) {
Text("1 week").tag(1)
ForEach(2 ..< 1000) { weeks in
Text("\(weeks) weeks")
.tag(weeks)
}
}.pickerStyle(WheelPickerStyle())
}
}
}
.onDisappear(perform: updateRruleString)
}
private func updateRruleString() {
print("INTERVAL: \(self.interval)")
}
}
当我关闭视图时,如果将Picker设置为5周,则将打印INTERVAL:3。如果将其设置为20周,则将打印INTERVAL:18。
我不知道为什么值要减去2。