我有一个简单的SwiftUI列表,当用户单击按钮时,我希望滚动到一行。我从hackingwithswift复制了这个代码。它应该工作,但它没有做。
struct ContentView: View {
var body: some View {
ScrollViewReader { proxy in
VStack {
Button("Jump to #50") {
proxy.scrollTo(5, anchor: .top)
}
List(0..<100) { i in
Text("Example \(i)")
.id(i)
}
}
}
}
}
struct ContentView_Previews: PreviewProvider {
static var previews: some View {
ContentView()
}
}
字符串
我在iOS 14.2上测试了它,包括模拟器和物理设备。
我读了它的documentation,但没有太多的信息。那么,如何滚动到一行,例如第50行?
2条答案
按热度按时间lb3vh1jj1#
ScrollViewReader
仅适用于:ScrollView
它不适用于
Range<Int>
的List
,除非显式设置其id
。显式设置id。
字符串
qkf9rpyu2#
字符串