使用SwiftUI时,我喜欢创建返回视图的函数,这是分离和清理代码的简单方法。是这样的:
func deleteButton() -> some View { return (Button...) }
这工作像一个魅力,但当我试图返回一个列表像这样:
func itemsList() -> List<Never, some DynamicViewContent> { ... }
我得到的错误“'一些'类型只实现的声明类型的属性和下标和函数的返回类型”。
我尝试它没有“一些”,只是“DynamicViewContent”没有列表,但都没有工作。
有人能帮我一下吗?
# # #选择# 1:
返回一些观点:
func myList() -> some View {
List(items, id:\.self) { item in
Text("Hello")
}
}
选项2:
使用特定类型。我能想到的最简单的方法是临时设置一个变量到List。例如:
var myList = List(items, id:\.self) { item in
Text("Hello")
}
如果我然后选项-点击myList Xcode将显示一个弹出显示确切的类型,myList被推断是。你可以使用它作为函数的返回类型。在我设计的例子中,它是List<Never ForEach<[GameModel] GameModel Text>其中items为[GameModel]