2 votes

Est-il possible d'avoir un bouton (action : -) dans une vue List/ForEach en SwiftUI ?

Je veux ajouter un Button(action: - en une vue Liste avec un ForEach dans lequel il y a un NavigationLink en elle. Ainsi, un utilisateur peut regarder l'écran de détail d'une liste qui a un numéro d'identification. Button(action: - Cependant, si l'utilisateur n'a pas besoin de voir les détails, il peut sélectionner en utilisant la fonction Button dans la liste.

List {
  ForEach(DATA, id: \.self { data in
    NavigationLink(destination: DetailView(data: data)) {
      HStack {
        Text(data.name)
        Button(action: {
           // add to an array
        }) {
             Text(data.price)
        }
      }
    }
  }
}

mais lorsque je clique sur le bouton, la vue détaillée apparaît toujours.

Je ne sais pas si c'est possible. Un conseil ?

2voto

Asperi Points 123157

Voici une approche possible

List {
  ForEach(DATA, id: \.self { data in
    NavigationLink(destination: DetailView(data: data)) {
      HStack {
        Text(data.name)
        Button(action: {
           // add to an array
        }) {
             Text(data.price) // some padding might be useful
                .foregroundColor(Color.blue) // << can be any 
        }.buttonStyle(PlainButtonStyle())    // << here !!
      }
    }
  }
}

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X