Mon problème est que j'ai (à Swiftui) une vision de défilement avec un pourach à l'intérieur. Sachez quand le forach charge toutes mes entrées, je souhaite que la dernière entrée soit concentrée.
J'ai fait des recherches sur Google, mais je n'ai trouvé aucune réponse.
ScrollView {
VStack {
ForEach (0..<self.entries.count) { index in
Group {
Text(self.entries[index].getName())
}
}
}
}
Je n'ai pas encore assez de réputation pour poster un commentaire, alors vous allez ici @dam et @evert
Pour faire défiler jusqu'au bas chaque fois que le nombre d'entrées dans vos modifications ForEach
Vous pouvez également utiliser la même méthode avec A ScrollViewReader
, comme indiqué dans la réponse ci-dessus, par Ajout du modificateur de vue onChange
Comme:
struct ContentView: View {
let colors: [Color] = [.red, .blue, .green]
var entries: [Entry] = Array(repeating: Entry(), count: 10)
var body: some View {
ScrollView {
ScrollViewReader { value in
ForEach(0..<entries.count) { i in
Text(self.entries[i].getName())
.frame(width: 300, height: 200)
.background(colors[i % colors.count])
.padding(.all, 20)
}
.onChange(of: entries.count) { _ in
value.scrollTo(entries.count - 1)
}
}
}
}
}