ViewBuilder 切换案例之间的动画转换

问题描述 投票:0回答:1

我有以下代码

var body: some View {
        NavigationView {
            content
        }
}

@ViewBuilder private var content: some View {
        switch someEnum {
        case .case1:
            view1()
        case .case2:
            view2()
        case .case3:
            view3()
        case .case4:
            view4()
        }
}

枚举更改时添加过渡的最佳方法是什么,以便两个视图之间的切换看起来像导航链接一样无缝?现在顶部的视图突然弹出到下一个视图中。我希望复制与导航链接类似的过渡,其中一个视图在更改时滑入另一个视图。

swiftui enums navigation transition viewbuilder
1个回答
1
投票

我相信你可以为每个视图添加一个过渡修饰符,如下所示。

view1()

   .transition(.scale(scale: 0.1, anchor: .bottom))

...

view2()

   .transition(.scale(scale: 0.1, anchor: .bottom))
© www.soinside.com 2019 - 2024. All rights reserved.