.onAppear не вызывается, когда View вложен в TabView?

Приведенный ниже код работал (вызывается onAppear), но как только я вложил свои два представления в tabView (чтобы представить пользовательский интерфейс, подобный UIPageViewController), функция onAppear второго представления никогда не вызывается, это ошибка или что-то в этом роде. делаешь неправильно?

struct SetUpWorkoutView: View {
        
        var body: some View {
            NavigationView {
                List {
                    ForEach(sessionTypes) { sessionType  in
                    NavigationLink(destination: LiveWorkoutView(sessionType: sessionType)) {
                        SessionTypeRow(name: sessionType.stringValue)
                    }
                }
            }
        }


 struct LiveWorkoutView: View {
     var body: some View {
    VStack(alignment: .leading) { }
      }.onAppear(perform: {
                    print("on appear called in LiveWorkoutView")
      }
    }
   }
}

@main
struct SwiftUITestApp: App {

    var body: some Scene {
        WindowGroup {
            TabView {
                SetUpWorkoutView()
                WatchSettingsView()
            }
            .tabViewStyle(PageTabViewStyle())
        }
    }
}

0 ответов

Другие вопросы по тегам