iOS: 'Bearbeiten'-Leiste sichtbar machen (nicht mehr in versteckter .bottomBar)

Der Start-Tab liegt in einer TabView; deren Tab-Balken verdeckte die
.bottomBar-Werkzeugleiste, deshalb war 'Bearbeiten' nicht auffindbar.
Jetzt eine eigene Leiste per safeAreaInset direkt ueber dem Tab-Balken.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Scarriffle
2026-07-31 22:53:42 +02:00
parent 80aa857bb0
commit 6ddf6024f7

View File

@@ -30,7 +30,10 @@ struct LocalOverview: View {
anzeige
}
}
.toolbar { ToolbarItemGroup(placement: .bottomBar) { werkzeugleiste } }
// Eigene Leiste statt `.bottomBar`: der Start-Tab liegt in einer TabView,
// deren Tab-Balken die `.bottomBar` verdecken würde. `safeAreaInset` legt
// die Leiste sichtbar direkt über den Tab-Balken.
.safeAreaInset(edge: .bottom) { werkzeugleiste }
.sheet(isPresented: $addShown) {
CardPickerView { neu in fuegeHinzu(neu) }
}
@@ -111,7 +114,10 @@ struct LocalOverview: View {
.pickerStyle(.menu)
}
@ViewBuilder private var werkzeugleiste: some View {
private var werkzeugleiste: some View {
VStack(spacing: 0) {
Divider()
HStack {
if bearbeiten {
Button { addShown = true } label: { Label("Karte", systemImage: "plus") }
Spacer()
@@ -131,7 +137,7 @@ struct LocalOverview: View {
Label("Dashboards", systemImage: "rectangle.stack")
}
Spacer()
Button("Fertig") { bearbeiten = false }
Button("Fertig") { bearbeiten = false }.fontWeight(.semibold)
} else {
Spacer()
Button { bearbeiten = true } label: {
@@ -139,6 +145,11 @@ struct LocalOverview: View {
}
}
}
.padding(.horizontal)
.padding(.vertical, 10)
}
.background(.bar)
}
private func titel(_ karte: AppCard) -> String {
if let pid = karte.productId, let p = produkte.first(where: { $0.id == pid }) {