Tôi muốn gọi một hàm khi giá trị của selectOption thay đổi. Có cách nào để làm điều này trong SwiftUI tương tự như khi chỉnh sửa TextField không?
Cụ thể, tôi muốn lưu tùy chọn đã chọn khi người dùng thay đổi tùy chọn đã chọn.
Đây là công cụ chọn của tôi:
struct BuilderPicker: View {
let name: String
let options: Array<String>
@State var selectedOption = 0
var body: some View {
HStack {
Text(name)
.font(.body)
.padding(.leading, 10)
Picker(selection: $selectedOption, label: Text(name)) {
ForEach(0 ..< options.count) {
Text(self.options[$0]).tag($0)
}
}.pickerStyle(SegmentedPickerStyle())
.padding(.trailing, 25)
}.onTapGesture {
self.selectedOption = self.selectedOption == 0 ? 1 : 0
}
.padding(.init(top: 10, leading: 10, bottom: 10, trailing: 0))
.border(Color.secondary, width: 3)
.padding(.init(top: 0, leading: 15, bottom: 0, trailing: 15))
.font(.body)
}
}
Tôi vẫn chưa quen với SwiftUI và rất thích sự giúp đỡ. Cảm ơn!