SwiftUI – NavigationStack

In einem älteren Artikel ging es um eine in SwiftUI zu erstellende NavigationView. Diese View ist mittlerweile als deprecated gekennzeichnet. Nachfolger ist der NavigationStack.

Ausgangspunkt soll der Code des Tutorials zur NavigationView sein:

struct ContentView: View {
    var body: some View {
        NavigationView {
            List {
                Text("Verwaltung")
                Text("Hochschulen")
                Text("Wochenmärkte")
                Text("Finanzämter")
            }
            .navigationBarTitle("Kiel-Info")
        }
    }
}

Innerhalb der NavigationView wird in diesem Beispiel eine Liste mit vier Text-Views verwendet.

Die NavigationView kann nun einfach durch ein NavigationStack ersetzt werden:

struct ContentView: View {
    var body: some View {
        NavigationStack {
            List {
                Text("Verwaltung")
                Text("Hochschulen")
                Text("Wochenmärkte")
                Text("Finanzämter")
            }
            .navigationBarTitle("Kiel-Info")
        }
    }
}

Am Aussehen der App ändert dies nichts:

Um die Liste übersichtlicher zu halten, könnten die Orte auch in einem separaten Array (hier mit der Bezeichnung places) gespeichert werden.

struct ContentView: View {

    let places = ["Verwaltung", "Hochschulen", "Wochenmärkte", "Finanzämter"]

    var body: some View {
        NavigationView {
            List(places, id: \.self) { place in
                Text(place)
            }
            .navigationBarTitle("Kiel-Info")
        }
    }
}