不同类型对象数组的SwiftUI抽象视图
我想列出两种类型的对象(MotorBikeRow和WithFootBikeRow将是此列表中两种稍有不同的行视图) 我来自Java,我自然会创建一个名为Bike的抽象类。这样我就有了两种(当然是更多)对象类型的列表:不同类型对象数组的SwiftUI抽象视图,swift,swiftui,swiftui-list,Swift,Swiftui,Swiftui List,我想列出两种类型的对象(MotorBikeRow和WithFootBikeRow将是此列表中两种稍有不同的行视图) 我来自Java,我自然会创建一个名为Bike的抽象类。这样我就有了两种(当然是更多)对象类型的列表: @Binding var bikeList:[Bike] 但问题是如何在Swift中实现这个“抽象类”? 我目前正在使用一个名为Bike的协议,这两个structs MotorBike和WithFootBike都符合该协议 List { ForEach(...) i in
@Binding var bikeList:[Bike]
但问题是如何在Swift中实现这个“抽象类”?
我目前正在使用一个名为Bike的协议,这两个structs MotorBike和WithFootBike都符合该协议
List {
ForEach(...) i in {
if bikeList[i] is MotorBike {
MotorBikeRow(motorBike: $bikeList[i]) << error
} else {
WithFootBikeRow(withFootBike: $bikeList[i]) << error
}
}
}
所以问题来了
我认为这是不可能的。但我只认为是自行车类型类还是结构?行视图需要对它们进行变异吗?@raynok它们是结构化的,我认为这是不可能的。但我只认为是自行车类型类还是结构?行视图需要对它们进行变异吗?@raynok它们是struct
@Binding var motorBike:MotorBike
@Binding var withFootBike:WithFootBike