101 votes

Comment supprimer les séparateurs de ligne d'une liste dans SwiftUI sans utiliser ForEach ?

J'ai ce code pour afficher une liste de lignes personnalisées.

 struct ContentView : View {
    var body: some View {
        VStack(alignment: .leading) {
            List(1...10) {_ in
                CustomRow()
            }
        }
    }
}

Cependant, je veux supprimer la ligne sur chaque ligne. J'ai essayé de ne pas utiliser List et d'utiliser à la place ForEach intérieur de ScrollView mais cela supprime complètement tout le style, y compris son rembourrage et ses marges. Je veux juste supprimer les lignes et rien d'autre.

S'il vous plaît aidez, merci.

10voto

markiv Points 195

Découvrez SwiftUI-Introspect . Il expose les vues UIKit/AppKit sous-jacentes.

Versions iOS 13 uniquement :

Dans ce cas, vous pouvez manipuler directement UITableView (sans avoir à modifier toutes les vues de la table via le proxy d'apparence):

     import Introspect
    :
    :
    List {
        ...
    }.introspectTableView { tableView in
         tableView.separatorStyle = .none
    }

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