如何在 SwiftUI 中为列表创建标题?

eja*_*a08 2 header list uitableview swift swiftui

我想在 SwiftUI 中实现列表的标头。我可以使用 ScrollView 来做到这一点,但我想要 List 的属性(如延迟加载)。有一个SectionHeader,但它保持固定在顶部,直到用户滚动到该部分的末尾,我不希望出现这种行为。我只想滚动整个视图。

有没有办法使用 SwiftUI 来实现这一点?

Hal*_*alR 8

看来您真的只想在列表顶部有一个自定义单元格。

只需使用部分即可。如果将其设为一个普通部分,只有一个条目,它将出现在顶部,并在视图滚动时滚动走。

    List {
        Section() {
            YourCustomRowThatLooksLikeAHeader()
        }

        Section() {
            // Normal list stuff
            ForEach(offers, id: \.self) { offer in
            NavigationLink(
                destination: DetailView(offer: offer)
            ) {
                HStack {
                    Image(offer.offerThumbnail ?? "")
                    Text("\(offer.shortInfo ?? "")")
                }
            }
                
        }
    }
Run Code Online (Sandbox Code Playgroud)