Loading...

How to open a second view from first view in iOS using SwiftUI?

question swiftui iOS
Ram Patra Published on April 2, 2024

In SwiftUI, you can open another view (or navigate to another view) on the click of a button by utilizing navigation views and navigation links. Here’s a basic example of how to achieve this:

import SwiftUI

struct ContentView: View {
    var body: some View {
        NavigationView {
            VStack {
                Text("Welcome to the first view!")
                
                // Button to navigate to the second view
                NavigationLink(destination: SecondView()) {
                    Text("Go to Second View")
                }
            }
            .navigationTitle("First View")
        }
    }
}

struct SecondView: View {
    var body: some View {
        VStack {
            Text("Welcome to the second view!")
        }
        .navigationTitle("Second View")
    }
}

struct ContentView_Previews: PreviewProvider {
    static var previews: some View {
        ContentView()
    }
}

In this example:

  1. We have a ContentView which is wrapped inside a NavigationView.
  2. Inside ContentView, there’s a NavigationLink that triggers navigation to SecondView when clicked.
  3. The SecondView is a separate view containing its own content.

When you click the “Go to Second View” button in the ContentView, SwiftUI automatically handles navigation to the SecondView.

Make sure you import SwiftUI and add these views to your SwiftUI app’s view hierarchy accordingly. This is a simple example, and you can customize it further based on your app’s requirements.

Take your presentation to the next level.

Put your face and name on your screen.

Your to-dos on your menu bar.

Fill forms using your right-click menu.

Ram Patra Published on April 2, 2024
Image placeholder

Keep reading

If this article was helpful, others might be too

question swiftui swift February 19, 2025 How to change the window level to floating, popUpMenu, etc. in SwiftUI?

When developing macOS applications with SwiftUI, you might need to create floating windows that stay on top of other windows. While modern macOS versions (15+) make this straightforward with the .windowLevel(.floating) modifier, supporting older versions requires a different approach. In this post, I’ll show you how to create floating windows that work across different macOS versions.

question swiftui macos October 15, 2023 How to display the app version and build number in a macOS/iOS SwiftUI app?

To display both the app version and build number in a SwiftUI macOS/iOS app, you can use the Bundle class to access information from the app’s Info.plist file. The Info.plist file contains various details about your application, including its version and build number. Here’s how you can do it:

question swiftui swift September 7, 2024 How to apply mirroring to any SwiftUI view?

You can apply mirroring to a SwiftUI view by using the scaleEffect(x:y:anchor:) modifier to flip the view horizontally or vertically. Specifically, you can set the x or y scale to -1.0 to mirror the view along that axis.

Like my work?

Please, feel free to reach out. I would be more than happy to chat.