Есть ли ошибка в предварительном просмотре tabBar в VisionOS?

Играя сvisionOSЯ переписываю руководства по SwiftUI для запуска на симуляторе Xcode VisionOS, пока все работает нормально, но добавляю любыеTabViewприводит к сбою предварительного просмотра (даже когда он работает при запуске). Вот мой код.

      TabView(selection: $selection) {
    Text("Tab 1")
        .tabItem {
            Label("Featured", systemImage: "star")
        }
        .tag(Tab.featured)

    Text("Tab 2")
        .tabItem {
            Label("List", systemImage: "list.bullet")
        }
        .tag(Tab.list)
 }

Что-нибудь, что мне может не хватать?

2 ответа

В VisionOS ошибок нет. Помещатьвнутри.

      import SwiftUI

struct ContentView : View {
    
    @State var text: String = ""
    
    var body: some View {
        NavigationSplitView {
            TabView {
                Text("Tab One")
                    .tabItem { Label("Featured", systemImage: "star") }
                    .onAppear { text = "Tab One's Items" }
                Text("Tab Two")
                    .tabItem { Label("List", systemImage: "list.bullet") }
                    .onAppear { text = "Items of Tab Two" }
            }.tabViewStyle(.page)
            List {
                Text(text)
                    .onChange(of: text) { _, newValue in
                        text = newValue
                    }
            }
        } detail: {
            // some code
        }
    }
}
#Preview {
    ContentView()
}

После ответа @AndyJazz я завернул себя внутрьZStack(вместоNavigationSplitView). Таким образом, я могу установить разные стратегии навигации для каждого дочернего элемента вTabView(то есть у меня есть одинNavigationViewи одинNavigationStack).

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