滚动时如何在导航栏中附加分段选取器?SwiftUI

byqmnocz  于 2023-10-15  发布在  Swift
关注(0)|答案(1)|浏览(99)

https://i.stack.imgur.com/TARUn.png在这个例子中,分段选择器在中间,一旦我开始滚动,它也滚动,但当到达导航栏时停止滚动,并将其附加在导航栏中,如图https://i.stack.imgur.com/xrXCl.png所示。如何在SwiftUI中实现这种方法?
我尝试过使用ScrollViewReader来实现这一点,但我不知道这是否可行

ev7lccsx

ev7lccsx1#

LazyVStack内置了pinnedViews的参数

LazyVStack(spacing: 1, pinnedViews: [.sectionHeaders]) {
    // ...
}

您可以使用它来“固定”Section的“头”

ScrollView {
        LazyVStack(spacing: 1, pinnedViews: [.sectionHeaders]) {
            ForEach(sections) { section in
                Section(header: SectionHeaderView(colorData: section)) {

https://developer.apple.com/documentation/swiftui/grouping-data-with-lazy-stack-views

相关问题