swift - SwiftUI beta 7:添加项目时触发“列表”滚动?
问题描述
使用 Xcode 11 beta 7 和 Catalina beta 19A536g
(6?)
在我的 SwiftUI 应用程序中,我有一个带有列表的简单视图。在列表下方,我有一个按钮可以将项目添加到列表中。
添加一些项目后,新添加的项目不可见,因为它们超出了列表的内容大小。
var body: some View {
NavigationView {
VStack {
List(self.accounts) { account in
Text("\(account.name)")
}
Button("Add new account") {
self.addNewAccount()
}
}.navigationBarTitle("Select account")
}
}
我想我想要一些绑定列表的内容偏移量,传递给我的方法addNewAccount
并触发列表的滚动。
我可以以某种方式以编程方式触发列表向下滚动到新内容吗?
解决方案
实现它的最简单方法是翻转列表及其内容.scaleEffect(x: 1, y: -1, anchor: .center)
,以便获得一个颠倒的结构化列表,但内容正确,因此,在列表中索引 0 处的项目插入将在底部以一个不错的方式执行看动画
List {
ForEach(self.content) { itemContent in
Item(itemContent).scaleEffect(x: 1, y: -1, anchor: .center)
}
}.scaleEffect(x: 1, y: -1, anchor: .center)
推荐阅读
- javascript - 一键式按钮适用于大屏幕,但在手机设备上只有双击有效
- java - IllegalArgumentException:在为“XML 解析器不应易受 XXE 攻击”实施 sonarqube 解决方案时不支持
- sql-server - 从 XML 的所有路径中获取键的值
- javascript - 如何监视命名函数?
- r - 获取 read.csv 中与 write.csv 中相同的文件名
- swift - swift中集合视图单元格内的按钮操作
- json - 在 AppModule 中阅读 Appsetting - Angular 8
- amazon-web-services - Amazon Pinpoint 彩信通知?
- java - Java - 如何解密 Chrome cookie?
- python - 未定义的变量“json”