当导航到具有表单或列表(分组)的新视图时,内容从导航视图标题的底部向下出现大约四分之一,然后大约半秒钟后“弹出”到正确的位置。非常难看。不知道这是SwiftUI错误还是结构错误?
我已经在模拟器和设备上对此进行了测试,结果相同。
我是否认为这与导航链接的处理方式有关?当ContentView出现时,每个导航链接都会在其目标视图上调用init()。对我而言,这没有任何意义,仅在用户实际单击导航链接时才应调用目标init()吗?
我也尝试过使用工作表进行工作,并且仅当使用具有链接样式或列表形式的列表的导航链接时,工作表才存在问题。
来自全新的单视图应用程序的代码:
struct ContentView: View {
var body: some View {
NavigationView {
NavigationLink(destination: TestView()) {
Text("Test Link")
}
.navigationBarTitle("Content View")
}
}
}
struct TestView: View {
var body: some View {
Form {
Text("Test View")
}
.navigationBarTitle("Test View")
}
}