首页 > 解决方案 > SwiftUI List - 如何滚动到项目

问题描述

我有物品清单。我如何滚动到列表 12。我可以使用几何阅读器来计算偏移量。但是如何滚动到这个偏移量?

List {
      ForEach(0..<12) { index in
          Text("...")          
      }  
}

标签: swiftui

解决方案


表单Xcode 12,您可以转入 a ScrollView,然后您可以通过以下方式完成.scrollTo(id)

var body: some View {
    ScrollViewReader { scrollProxy in
        ScrollView {
            ForEach((1...100), id: \.self) { Text("\($0)") }
        }
        Button("Go!") {
            withAnimation { scrollProxy.scrollTo(50) }
        }
    }
}

注意 ScrollViewReader应该支持所有可滚动的内容,但现在它只支持ScrollView


推荐阅读