相关疑难解决方法(0)

使用SwiftUI转到新视图

我已经有了使用SwiftUI的按钮的基本视图,并且在点击按钮时试图呈现一个新的屏幕/视图。我该怎么做呢?我是否想为此视图创建一个委托,以告诉应用程序SceneDelegate呈现一个新的视图控制器?

import SwiftUI

struct ContentView : View {
    var body: some View {
        VStack {
            Text("Hello World")
            Button(action: {
                //go to another view
            }) {
                Text("Do Something")
                    .font(.largeTitle)
                    .fontWeight(.ultraLight)
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

swift swiftui

10
推荐指数
7
解决办法
4648
查看次数

SwiftUI 如何有下一个和后一个动画?

我制作了包含 3 个页面和“下一步”、“后退”按钮的示例应用程序。

在此输入图像描述

当我单击“下一步”时,动画是完美的:旧内容位于​​左侧,新内容来自右侧。

然而,我正在努力使“返回”动画同时正常工作。

目标:当单击“返回”时,旧内容应位于右侧,新内容应位于左侧。(“后退”的动画应与“下一步”的动画相反)

知道如何实现这一点吗?

下面是“下一步”的完美过渡

struct ContentView: View {
    @State var page: Int = 0
    
    var body: some View {
        
        VStack {
            HStack {
                Button(action: { withAnimation() { self.page = self.page - 1 } }) {
                    Text("Back")
                }
                
                Spacer()
                
                Button(action: { withAnimation() { self.page = self.page + 1 }}) {
                    Text("Next")
                }
            }
            Spacer()
            
            if page == 0 {
                PageView(name: "First page", color: .brown)
                    .transition(AnyTransition.asymmetric(insertion: .move(edge: .trailing), removal: .move(edge: .leading)))
            } else if page == 1 { …
Run Code Online (Sandbox Code Playgroud)

swiftui

7
推荐指数
1
解决办法
3402
查看次数

标签 统计

swiftui ×2

swift ×1