Hi. Just change your tag to refer to breed instead of color, like so
var body: some View {
Form {
Picker("Dogs:", selection: $selectedDog) {
ForEach(dogService.dogs, id: \.self) {
Text($0.name).tag($0.breed)
}
}
.onChange(of: selectedDog) {dog in
print("Dog Breed: \(dog)") // outputs, Brown, White or Black
// what I would like to do...
// print("Dog Breed: \(dog.breed)") // should output, Golden Retriever, Poodle or Labrador
}
}
}
to access all properties then assign dog object to a tag.
@State private var selectedDog = Dog(name: "", color: "", breed: "")
var body: some View {
Form {
Picker("Dogs:", selection: $selectedDog) {
ForEach(dogService.dogs, id: \.self) {
Text($0.name).tag($0)
}
}
.onChange(of: selectedDog) {dog in
print("Dog Breed: \(dog.breed)") // outputs, Brown, White or Black
print("Dog Color: \(dog.color)")
// what I would like to do...
// print("Dog Breed: \(dog.breed)") // should output, Golden Retriever, Poodle or Labrador
}
}
}