SwiftUI如何在多级导航视图中停止列表的动画
我只想在多级导航视图中有多个列表时停止动画。也许这不是“动画”,我只是想解决这个问题 在Xcode版本11.3.1(11C504)+iOS 13.2上 代码很简单,你可以发现它是有线的SwiftUI如何在多级导航视图中停止列表的动画,swiftui,navigationlink,Swiftui,Navigationlink,我只想在多级导航视图中有多个列表时停止动画。也许这不是“动画”,我只是想解决这个问题 在Xcode版本11.3.1(11C504)+iOS 13.2上 代码很简单,你可以发现它是有线的 import SwiftUI struct TestView: View { var body: some View { NavigationView { List { ForEach(1...4, id: \.self) {_
import SwiftUI
struct TestView: View {
var body: some View {
NavigationView {
List {
ForEach(1...4, id: \.self) {_ in
NavigationLink(destination: AView()) {
Text("root")
}
}
}
}
}
}
struct AView: View {
var body: some View {
List {
ForEach(1...4, id: \.self) {_ in
NavigationLink(destination: BView()) {
Text("aview")
}
}
}
}
}
struct BView: View {
var body: some View {
List {
ForEach(1...4, id: \.self) {_ in
NavigationLink(destination: BView()) {
Text("bview")
}
}
}
}
}
struct TestView_Previews: PreviewProvider {
static var previews: some View {
TestView()
}
}
好的。。。我安装了这个倒霉的Xcode 11.3.1。。。这里有一个解决方案(或者解决方法)——使用显式
.listRowInsets
,如下例所示(顺便说一句,insets可以是任何值)
适用于任何动态列表如果您指的是过渡结束时(在屏幕录制上)的弹簧,则我方不会观察到。使用Xcode 11.2/iOS 13.2进行测试。@Asperi我的环境是Xcode版本11.3.1(11C504)/iOS 13.2:(这是swiftUI中已知的错误。您可以在这里看到问题-[您在真实设备上试用过吗?有时这种问题只出现在Xcode上。@Asperi是的,当然,我在真实设备上试用过。
List {
ForEach(1...1000, id: \.self) {_ in
NavigationLink(destination: BView()) {
Text("bview")
}
}
.listRowInsets(EdgeInsets(top: 0, leading: 20, bottom: 0, trailing: 20))
}