SwiftUI NavigationLink Nascondi freccia


9

C'è un modo per nascondere la freccia a destra della vista del collegamento di navigazione che viene aggiunta automaticamente?

Voglio mostrare una griglia di immagini usando NavigationView -> Elenco -> HStack -> NavigationLink_1 - NavigationLink_2

I NavigationLink hanno frecce e sembra strano inserisci qui la descrizione dell'immagine


anche curioso di questo, hai trovato una risposta?
crazyhor77,

@ crazyhor77 nah, sono tornato allo storyboard, UICollectionView e dopo ho seguito i clic delle celle.
blackops il

Risposte:


7

Il modo in cui ha funzionato per me:

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

1
Questo non sembra funzionare sui moduli.
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 }
        }
}

Questo non funziona davvero perché quando torni indietro non è possibile selezionare lo stesso elemento.
Vladimirs Matusevics,

1
Ho usato navigationlink in questo modo e tutto ha funzionato bene.
Narek Ghukasyan,

Questo non funziona quando si usa a Form: `var body: some View {Form {NavigationLink (destinazione: Testo (" Visualizza "), tag: 1, selezione: $ selezione) {EmptyView ()} Testo (" Tap "). onTapGesture {self.selection = 1}}} `NOTA: l' VStackesempio sopra non è necessario.
RndmTsk,

1
Prova in questo modo: VStack {modulo navlink}
Narek Ghukasyan l'

0

Puoi anche fare come: ha funzionato per me,

@State var boolValue: Bool = false


                HStack {
                    Text("Your text")
                    Toggle(isOn: $boolValue){
                        Text("")
                    }
                    if boolValue {
                        NavigationLink(destination: DestinationView()) {
                            EmptyView()
                        }.frame(width: 0)
                    }
                }
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.