2.8 KiB
2.8 KiB
Prompt für KI-Agent zur Überprüfung und Modernisierung einer bestehenden TabView mit NavigationStacks in SwiftUI (iOS 26)
Ziel
Prüfe eine existierende SwiftUI-App mit bestehender TabView und NavigationStacks auf iOS 26-Konformität und korrigiere sie gegebenenfalls. Hauptpunkte:
- Die
TabViewsoll mit moderner iOS 26 Tab-API aufgebaut sein, d.h. Tabs als eigenständigeTab-Views und KEIN.tabItemmehr verwenden. - Jeder Tab soll eine eigene
NavigationStackmit eigenemNavigationPathhaben, um den Navigationszustand pro Tab unabhängig zu verwalten. - Der Tab-Auswahl-Binding (
@State) und.tag()-Zuweisungen müssen korrekt gesetzt sein. - Der neue Such-Tab soll als
Tab(role: .search)implementiert sein mit einem eigenen Suchfeld via.searchable(). - Navigationstitel, Suchfunktion und Navigationslinks müssen in der jeweiligen NavigationStack-Umgebung eingebettet sein.
- Die TabBar soll beim Tiefennavigieren in einem Tab sichtbar bleiben, außer es gibt ein explizites Ausblenden.
- Eventuelle veraltete oder falsche Patterns wie
.tabItemoder kombiniert verwendeteNavigationViewaußerhalb der Stacks sollen korrigiert werden. - Alle Subviews sollen modular organisiert sein und keine Globalzustände die Navigation verwalten.
Prüffragen für den Agenten
- Nutzt die
TabViewdie neue Form mitTabals Container pro Tab? - Werden für jeden Tab eigene
NavigationStacks undNavigationPaths verwendet? - Sind
.tag()undselectioninTabViewkorrekt implementiert? - Ist der Such-Tab mit
Tab(role: .search)sauber getrennt und die Suche mit.searchable()eingebunden? - Werden veraltete
.tabItemModifier vollständig entfernt? - Bleibt die TabBar sichtbar beim Navigieren in den Stacks, außer bewusst ausgeblendet?
- Wird State sauber und lokal in den jeweiligen Views verwaltet?
- Gibt es keine vermischten oder redundanten NavigationView/Stacks?
- Werden Navigationsziele übersichtlich in Subviews ausgelagert?
- Ist der gesamte Code idiomatisch und an die iOS 26 SwiftUI-Standards angepasst?
Ausgabeformat
Der Agent soll die App prüfen, Fehler auflisten, Korrekturen vorschlagen und wenn möglich direkt umgesetzten SwiftUI-Code erzeugen, der:
- Komplette TabView mit Tabs als
Tab - Jeweils eigene NavigationStack mit NavigationPath
- Such-Tab mit
Tab(role: .search)und suchbarer Navigation - Keine
.tabItemoder deprecated Patterns enthält - Klar strukturiert und modular ist
Beispiel-Ausschnitt zur Referenz
TabView(selection: $selectedTab) {Tab(“Home”, systemImage: “house”) {NavigationStack(path: $homePath) {HomeView()}}.tag(Tab.home)
Tab(role: .search) {
NavigationStack(path: $searchPath) {
SearchView()
.searchable(text: $searchText)
.navigationTitle("Search")
}
}
.tag(Tab.search)
// weitere Tabs...
}