小编Zon*_*eva的帖子

如何在 iPhone 上使用 SwiftUI 显示表格数据?

我正在为当地的体育联盟开发一个应用程序。

一个视图将是当前排名,每行有几个字段:球队名称、已玩的比赛、得分等。我希望球队列左对齐,其他列右对齐。

似乎最好的答案是 SwiftUI 的 Table(),但在 iPhone 上,它只显示第一列。

我尝试过将 HStack{} 与 Text() 一起使用:

List {
    ForEach(selectedStats()) { stats in
        HStack {
            Text (stats.name)
            Spacer()
            Text ("\(stats.totalMatches)")
            Text ("\(stats.standingsPoints)")
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

但我很难让列在表格中的多行中左对齐或右对齐。

有没有办法让 Tables 工作?或者如何对齐我的列?

(PS,我使用了 TableView 标签,因为没有特定于 Table 或 SwiftUI-Table 的标签。如果可以添加的话那就太好了。)

alignment tableview swiftui

5
推荐指数
1
解决办法
1840
查看次数

SwiftUI - 对不同的选择器使用除一个枚举值之外的所有值

在我的应用程序中,我需要使用Picker在两个不同的地方使用 a 。在一个地方,它将属性设置为三个值之一:A、B 或 C。但是,在另一个地方,我想使用选择器来过滤项目数组以显示所有项目(无过滤器)或仅 A、B 或 C 项。

所以,我的第一次尝试是创建一个enum像这样的:

enum Category {
  case all
  case A
  case B
  case C
}
Run Code Online (Sandbox Code Playgroud)

使用它,我可以成功过滤我的列表。但是,当我尝试在数组中创建新项目时,我不想all成为一个选项。用户应该只能看到包含 A、B 和 C 的选择器。

我可以尝试:

enum Category {
  case A
  case B
  case C
}
Run Code Online (Sandbox Code Playgroud)

但是如何添加all过滤器选择器的选项呢?

(为了解决下面的一些评论,这里有一些关于我试图完成的具体事情的更多细节......

锦标赛可以是男子、女子或混合锦标赛。在列出锦标赛的屏幕上,我希望能够显示所有锦标赛或仅显示男子锦标赛、仅显示女子锦标赛或仅显示混合锦标赛。所以,我有一个横跨 iPhone 宽度的选择器。看起来和工作都很棒。

显然,当向列表添加新项目时,我必须指定其类别,但不是“全部”。也是一个拾取器。

因此,在一种情况下,我需要三个值,在另一种情况下,我需要相同的三个值,并在开头添加“All”。)

enums picker swift swiftui

2
推荐指数
1
解决办法
2020
查看次数

标签 统计

swiftui ×2

alignment ×1

enums ×1

picker ×1

swift ×1

tableview ×1