SwiftUI NavigationLink Masquer la flèche


9

Existe-t-il un moyen de masquer la flèche à droite de la vue du lien de navigation qui est automatiquement ajoutée?

Je souhaite afficher une grille d'images à l'aide de NavigationView -> Liste -> HStack -> NavigationLink_1 - NavigationLink_2

Les NavigationLinks ont des flèches et ça a l'air bizarre entrez la description de l'image ici


aussi curieux à ce sujet, avez-vous trouvé une réponse?
crazyhor77

@ crazyhor77 nah, je suis retourné au storyboard, UICollectionView et enchaîne sur les clics sur les cellules après cela.
blackops

Réponses:


7

La façon dont cela a fonctionné pour moi:

List { 
    ForEach(elements) { element in
        ZStack {
            CustomView(element: element)
            NavigationLink(destination: DestinationView()) {
                EmptyView()
            }.buttonStyle(PlainButtonStyle())
        }
    }
}

1
Cela ne semble pas fonctionner sur les formulaires.
Ever Uribe

3
@State var selection: Int? = nil

var body: some View {
    let navigation = NavigationLink(destination: Text("View"), tag: 1, selection: $selection) { EmptyView() }
    return 
        VStack { 
            navigation
            Text("Tap").onTapGesture { self.selection = 1 }
        }
}

Cela ne fonctionne pas vraiment car lorsque vous revenez en arrière, vous ne pouvez pas sélectionner le même élément.
Vladimirs Matusevics

1
J'ai utilisé navigationlink de cette façon et tout a bien fonctionné.
Narek Ghukasyan

Cela ne fonctionne pas lorsque vous utilisez un Form: `var corps: certains View {Form {NavigationLink (destination: Text (" View "), tag: 1, selection: $ selection) {EmptyView ()} Text (" Tap "). onTapGesture {self.selection = 1}}} `REMARQUE: l' VStackexemple ci-dessus n'est pas nécessaire.
RndmTsk

1
Essayez de cette façon: VStack {navlink Form}
Narek Ghukasyan

0

Vous pouvez aussi faire comme: Cela a fonctionné pour moi,

@State var boolValue: Bool = false


                HStack {
                    Text("Your text")
                    Toggle(isOn: $boolValue){
                        Text("")
                    }
                    if boolValue {
                        NavigationLink(destination: DestinationView()) {
                            EmptyView()
                        }.frame(width: 0)
                    }
                }
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.