Hallo,
ich würde gerne einen Badge an einemTabView Item aktualisieren und habe schon mit @StateObject und @ObservedObject versucht, aber irgendwie erscheint kein Badge bei einer Änderung.
Der Aufbau meiner App ist wie folgt:
Eine TabView, in der andere Views (welche jeweils in eigenen ?Dateien? existieren) angezeigt werden. In einer der Views in der Tabview wird ein Counter verändert, und diesen Counter würde ich gerne an die TabView "Übertragen" und dort als Badge im Tabview Item anzeigen. Wie ich schon sagte, habe ich mit @StateObject und @ObservedObject schon rum probiert, aber die Änderungen an dem Badge des TabviewItems werden nie angezeigt, als würde sich der State nicht ändern.
Ich habe ein Class die das ganze speichern soll:
Dann die TabView:
Alles anzeigen
und in der openMenus() View habe ich dann das StateObject das sich ändert:
Was mache ich denn falsch?
Grüße
Dirk
ich würde gerne einen Badge an einemTabView Item aktualisieren und habe schon mit @StateObject und @ObservedObject versucht, aber irgendwie erscheint kein Badge bei einer Änderung.
Der Aufbau meiner App ist wie folgt:
Eine TabView, in der andere Views (welche jeweils in eigenen ?Dateien? existieren) angezeigt werden. In einer der Views in der Tabview wird ein Counter verändert, und diesen Counter würde ich gerne an die TabView "Übertragen" und dort als Badge im Tabview Item anzeigen. Wie ich schon sagte, habe ich mit @StateObject und @ObservedObject schon rum probiert, aber die Änderungen an dem Badge des TabviewItems werden nie angezeigt, als würde sich der State nicht ändern.
Ich habe ein Class die das ganze speichern soll:
Dann die TabView:
Quellcode
- struct Tabs: View {
- @ObservedObject var newMenus:Badge
- @State var selectedTab:Int = 0
- var body: some View {
- TabView(selection: $selectedTab) {
- openMenus()
- .tabItem {
- Label("aktuelle Bestellungen", systemImage: "clock.badge.checkmark")
- }
- .badge(newMenus.counter)
- finishedMenus()
- .tabItem {
- Label("erledigte Bestellungen", systemImage: "checklist.checked")
- }
- allOrdersToday()
- .tabItem {
- Label("offenen Bestellungen", systemImage: "checklist.unchecked")
- }
- }
- }
- }
und in der openMenus() View habe ich dann das StateObject das sich ändert:
Grüße
Dirk
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Qvex23 ()