import SwiftUI
struct ContentView: View {
@State var selection = 0
var body: some View {
let binding = Binding(get: {selection}, set: {selection = $0} )
return VStack {
Picker("Select a number", selection: binding) {
ForEach(0..<5) {
Text("Item \($0)")
}
}.pickerStyle(SegmentedPickerStyle())
}
}
}
import SwiftUI
struct ContentView: View {
@State var agreedToTerms = false
@State var agreedToPrivacyPolicy = false
@State var agreedToEmails = false
var body: some View {
let agreedToAll = Binding<Bool>(get: {agreedToTerms && agreedToPrivacyPolicy && agreedToEmails},
set: {agreedToEmails = $0
agreedToTerms = $0
agreedToPrivacyPolicy = $0
} )
return VStack {
Toggle(isOn: $agreedToTerms) {
Text("Agree to terms")
}
Toggle(isOn: $agreedToPrivacyPolicy) {
Text("Agree to privacy policy")
}
Toggle(isOn: $agreedToEmails) {
Text("Agree to receive shipping emails")
}
Toggle(isOn: agreedToAll) {
Text("Agree to all")
}
}
}
}
From: SwiftUI 知识碎片