Updates in iOS18
now officially supported
struct ContentView: View {
var body: some View {
NavigationStack {
VStack {
Group(subviewsOf: Group {
Text("A")
Text("A")
Text("A")
}) { subviews in
ForEach(subviewOf: subviews, content: { subview in
HStack {
Text("💡")
subview
}
})
}
}
.padding()
}
}
}
#Preview {
ContentView()
}
SwiftUI under the Hood: Variadic Views
SwiftUI Views are Lists — Chris Eidhof
@available(iOS 13.0, macOS 10.15, tvOS 13.0, watchOS 6.0, *)
extension SwiftUI._VariadicView_Children : Swift.RandomAccessCollection {
public struct Element : SwiftUI.View, Swift.Identifiable {
public var id: Swift.AnyHashable {
get
}
public func id<ID>(as _: ID.Type = ID.self) -> ID? where ID : Swift.Hashable
public subscript<Trait>(key: Trait.Type) -> Trait.Value where Trait : SwiftUI._ViewTraitKey {
get
set
}
public static func _makeView(view: SwiftUI._GraphValue<SwiftUI._VariadicView_Children.Element>, inputs: SwiftUI._ViewInputs) -> SwiftUI._ViewOutputs
public typealias Body = Swift.Never
public typealias ID = Swift.AnyHashable
}
public var startIndex: Swift.Int {
get
}
public var endIndex: Swift.Int {
get
}
public subscript(index: Swift.Int) -> SwiftUI._VariadicView_Children.Element {
get
}
public typealias Index = Swift.Int
public typealias Indices = Swift.Range<Swift.Int>
public typealias Iterator = Swift.IndexingIterator<SwiftUI._VariadicView_Children>
public typealias SubSequence = Swift.Slice<SwiftUI._VariadicView_Children>
}