Я пытался скопировать свое приложение, используя SwiftUI.Он имеет RootViewController, который, в зависимости от значения перечисления, показывает другой дочерний контроллер представления.Так как в SwiftUI мы используем представления вместо контроллеров представления, мой код выглядит так:
struct RootView : View {
@State var containedView: ContainedView = .home
var body: some View {
// custom header goes here
switch containedView {
case .home: HomeView()
case .categories: CategoriesView()
...
}
}
}
К сожалению, я получаю предупреждение:
Замыкание, содержащее оператор потока управленияне может использоваться с построителем функций ViewBuilder
.
Итак, есть ли альтернативы для переключения, чтобы я мог повторить это поведение?