Wenn ich mittels NavigationView in einen Bereich navigiere, ist oben in der linken Ecke der "Back" - Links zu sehen, der auch konfiguriert werden kann - an sich eine schöne Sache. Wenn ich aber von dieser View wieder in eine weitere navigiere und von dieser wieder in eine weitere, sehe ich oben alle links - wobei mir jeweils der eine zum zuvorgehenden Bereich ausreichen würde. Hinzu kommt, dass beim Navigieren in mehrere "Unterbereiche" durch die zwei / drei Links oben die eigentliche Ansicht auf dem Display immer weiter unten anfängt - was nicht unbedingt schön ist. Gibt es dafür eigentlich eine Lösung oder muss man es akzeptieren?
NavigationView - mehrere Links zum Zurücknavigieren sichtbar für die jeweiligen Views
Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen
-
-
Ja
Das kommt von, wenn man in einer NavigationView eine weitere erzeugt. Hier musst aufpassen und am besten nur mit den Link weiterfahren.
Schöne Grüsse
Wolf -
Gut, was genau meinst du mit "Link"? Wie erstelle ich bitte einen "einfachen" Link?
Im Apple-Tutorial habe ich lediglich die Navigation mit NavigationView kennengelernt, bei hackingwithswift fand ich noch die Möglichkeit Sheets zu nutzen (sehr ästhetisch). Doch einen einfachen Link zu einer anderen View zu erzeugen - wie eben im Webdesign - wäre oft das Einfachste und Praktischste. Wie kann ich das realisieren?
Viele Grüße
Arek -
Schau Dir mal das folgende Coding an....
import SwiftUI
struct ContentView: View {
@State var showSecond: Bool = false
var body: some View {
NavigationView {
NavigationLink(destination: SecondView(showSecond: self.$showSecond)) {
Text("Show Second").padding()
}
}
}
}
struct SecondView: View {
@Binding var showSecond: Bool
@State var showThirt: Bool = false
var body: some View {
VStack {
NavigationLink(destination: ContentView()) {
Text("Show First").padding()
}
Spacer()
NavigationLink(destination: ThirtView(showThirt: self.$showThirt)) {
Text("Show Thirt").padding()
}
}
}
}
struct ThirtView: View {
@Binding var showThirt: Bool
@State var showFort: Bool = false
var body: some View {
VStack {
NavigationLink(destination: SecondView(showSecond: self.$showThirt)) {
Text("Show Second").padding()
}
Spacer()
NavigationLink(destination: FortView(showFort: self.$showFort)) {
Text("Show Fort").padding()
}
}
}
}
struct FortView: View {
@Binding var showFort: Bool
var body: some View {
VStack {
NavigationLink(destination: ThirtView(showThirt: self.$showFort)) {
Text("Show Thirt").padding()
}
}
}
}
struct ContentView_Previews: PreviewProvider {
static var previews: some View {
ContentView()
}
}
PS: @Moderartion: Weshalb kann man hier keine Code Tags einfügen?
Schöne Grüsse
Wolf -
Jetzt habe ich es verstanden - die NavigationView benenne ich auf der ersten Ansicht und ab der 2. Ebene nach unten kann ich einfach nur mit Links arbeiten - das war mir nicht klar. Danke! Coder Tags kann man einfügen:
[Blockierte Grafik: http://www.flori-software.de/codetag.png] -
Betreff CoderTags: Danke, nur in diesen Modus des Editors komme ich gar nicht. Hatte früher mal funktioniert, doch nun leider nicht mehr.
Schöne Grüsse
Wolf