【发布时间】:2019-11-26 23:11:05
【问题描述】:
我有 SwiftUI 和 XCode 11.2.1 环境。
在下面的代码中,ForEach 循环显示标题,列表也显示出来,它起作用了:
struct Todo: Codable, Identifiable {
let userId, id: Int
let title: String
let completed: Bool
enum CodingKeys: CodingKey {
case userId, id, title, completed
}
}
// SOME STUFF HERE ...
struct ContentView: View {
// SOME STUFF HERE...
var body: some View {
NavigationView {
VStack (spacing: 15){
Text("Number of items: \(todoData.todos.count)"
ForEach(self.todoData.todos) { str in Text(String(str.title));} // works
List(self.todoData.todos) { todo in
Text(todo.title) // works
}
但是,下面的 ForEach 循环根本不显示 Text,我使用了 todoData.todos.count:
ForEach(0 ..< (todoData.todos.count)) {
Text(String(self.todoData.todos[$0].userId))
}
来到 Picker 人群,当我使用以下内容时:
Picker( selection: $selectedItem, label: Text("MyItems"), content:
{
ForEach(self.todoData.todos) { str in Text(str.title);}
}
)
=-- 除了“MyItems”选择器名称和选择器列表的 2 行空行之外,什么都没有显示。
任何建议/帮助将不胜感激。
=--
data is as follows:
[
{
"userId": 1,
"id": 1,
"title": "delectus aut autem",
"completed": false
},
{
"userId": 1,
"id": 2,
"title": "quis ut nam facilis et officia qui",
"completed": false
},
{
"userId": 1,
"id": 3,
"title": "quis ut nam facilis et officia qui",
"completed": false
},
{
"userId": 2,
"id": 4,
"title": "quis ut nam facilis et officia qui",
"completed": false
}
]
【问题讨论】:
标签: ios text foreach swiftui picker