La ScrollView horizontale imbriquée a un rembourrage invisible par le haut. J'ai essayé d'ajouter ".padding(.top, 0)" pour le ScrollView et pour le contenu, mais cela ne fonctionne pas. Est-ce un bug ou est-il possible de supprimer ce rembourrage ?

VStack(alignment: .leading) {
      Text("Text one")
      Text("Text two")
      ScrollView(.horisontal, showsIndicators: false) {
      Text("Text with strange top padding")
    }
}.padding(.horizontal)
2
yoprst 12 févr. 2020 à 00:55

1 réponse

Meilleure réponse

Je ne sais pas ce qu'est ScrollingView mais avec le ScrollView standard, l'exemple fourni fonctionne bien (testé avec Xcode 11.2 / iOS 13.2)

Voici une démo avec une bordure ajoutée autour de la vue de défilement pour une meilleure visibilité

struct TestHorizontalScrollView: View {
    var body: some View {
        VStack(alignment: .leading, spacing: 0) {
              Text("Text one")
              Text("Text two")
              ScrollView(.horizontal) {
                Text("Text with strange top padding")
            }.border(Color.red)
        }.padding(.horizontal)
    }
}

enter image description here

3
Asperi 12 févr. 2020 à 09:04