Apple Watch上的SwiftUI NavigationView在子视图中触发onAppear的多个调用

时间:2020-07-23 20:16:30

标签: swiftui apple-watch watchos ios-navigationview onappear

使用Xcode Beta 12.3,以下代码将两次调用onAppear并打印两次。当我注释掉包装ContentView的NavigationView时,onAppear仅被调用一次。这是预期的行为吗?看来,任何NavigationView都会触发onAppear的多次调用,这不是我期望的...我希望与UIKit中的ViewWillAppear行为相同。

@main
struct anotherTestWatchAppApp: App {
    var body: some Scene {
        WindowGroup {
            NavigationView {
                ContentView()
            }
        }
    }
}

struct ContentView: View {
    var body: some View {
        Text("Hello, World!")
        .padding()
            .onAppear(perform: {
                print("test")
            })
    
    }
}

0 个答案:

没有答案