要在SwiftUI中滚动到列表中的特定行,可以使用ScrollViewReader和ScrollView。以下是实现的步骤:
1.创建一个带有ScrollView和ScrollViewReader的视图。
ScrollViewReader { scrollViewProxy in
ScrollView {
//列表
}
}
2.在列表中添加一个ID,以便稍后引用该行。
List {
ForEach(items) { item in
Text(item.name)
.id(item.id)
}
}
3.在相应的操作中,使用scrollViewProxy.scrollTo()将视图滚动到列表中的指定行。例如,要将第五行滚动到视图中心,请使用以下代码:
Button("Scroll to row 5") {
scrollViewProxy.scrollTo(items[4].id, anchor: .center)
}