iosswiftui

Default text for back button in NavigationView in SwiftUI


I use a NavigationLink to navigate from "View1" to "View2", on the second view, the back button gets the title of the previous view

enter image description here

But, if the title of the previous view is very long, then the back button gets the text "Back"

enter image description here

How could I change that "Back" text?

I wanna make my app available in multiple languages, but it seems that "Back" does not change when phone's language changes

struct ContentView: View {

    var body: some View {

        return NavigationView {
            VStack {
                Text("View1")
                NavigationLink(destination: Text("View2").navigationBarTitle("Title View2", displayMode: .inline)) {
                    Text("NavigationLink")
                }
            }.navigationBarTitle("Title View1")
        }

    }
}

PS: I'd like to keep this functionality as it it, I just want to change the language used for back button


Solution

  • I've managed to localize back buttons by providing translations for the Back key in the Localizable.strings file.

    I am using SwiftUI though.