![](/img/trans.png)
[英]Is there any way to create/extract an array of Views using @ViewBuilder in SwiftUI
[英]ForEach with Array of Custom Views inside ViewBuilder in swiftui
我是 iOS 开发的新手。在这里我尝试使用 foreach 循环获取不同的目标视图
struct NewView : View
{
var arrayofviews //here I need array of views
var body:some View
{
List
{
ForEach(array)
{(item) in
NavigationLink(destination: item)
{
Text("Click Here")
}
}
}
}
}
我试过
var arrayofviews=[view1(),view2(),view3()] as! [Any]
然后我收到此错误无法将“view1”类型的值转换为预期的元素类型“Array.ArrayLiteralElement”(又名“AnyView”)
这里 view1,view2,view3 是自定义视图
struct view1:View
{
var body:Some View
{
Text("...")
...
}
}
//similarly view2 and view3 also
struct NewView : View
{
var arrayofviews=[AnyView(view1()),AnyView(view2()),AnyView(view3())] as! [AnyView] //This helped
var body:some View
{
List
{
ForEach(0..<array.count)
{(index) in
NavigationLink(destination: array[index])
{
Text("Click Here")
}
}
}
}
}
感谢 'Mohammad Rahchamani' 的建议!!!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.