【问题标题】:How to hide empty rows in List如何隐藏列表中的空行
【发布时间】:2019-06-13 12:24:35
【问题描述】:

我创建了简单的列表,但我想隐藏空行。有什么帮助吗?我知道如何为 UITableView 隐藏它们,但不为新的 SwiftUI 列表隐藏它们。我尝试了文档,但没有找到任何东西。

struct LandmarkList: View {
    @EnvironmentObject var userData: UserData

    var body: some View {
        NavigationView {
            List {
                Toggle(isOn: $userData.showFavoritesOnly) {
                    Text("Favorites only")
                }
                ForEach(userData.landmarks) { landmark in
                    if !self.userData.showFavoritesOnly || landmark.isFavorite {
                        NavigationButton(destination: LandmarkDetail(landmark: landmark)) {
                            LandmarkRow(landmark: landmark)
                        }
                    }
                }
            }
            .navigationBarTitle(Text("Landmarks"), displayMode: .large)
        }
    }
}

结果

【问题讨论】:

标签: swift swiftui


【解决方案1】:

不完全是这个问题的解决方案,但 摆脱列表中的行的一种方法是使用修饰符

List{
// Different Views 
}.listStyle(.grouped)

【讨论】:

    【解决方案2】:

    目前最好的解决方案可能是创建ScrollView 并在其中创建包含ForEach 的行。

    【讨论】:

      猜你喜欢
      • 2017-11-14
      • 2022-10-15
      • 1970-01-01
      • 2019-10-05
      • 1970-01-01
      • 2012-10-28
      • 1970-01-01
      • 2022-12-15
      • 1970-01-01
      相关资源
      最近更新 更多