Wie kann ich eine UIScrollView
in meinem Code nach unten scrollen? Oder, allgemeiner ausgedrückt, zu einem beliebigen Punkt einer Unteransicht?
Antworten
Zu viele Anzeigen?
Kim
Punkte
101
Die Verwendung von UIScrollViews setContentOffset:animated:
Funktion, um in Swift nach unten zu blättern.
let bottomOffset : CGPoint = CGPointMake(0, scrollView.contentSize.height - scrollView.bounds.size.height + scrollView.contentInset.bottom)
scrollView.setContentOffset(bottomOffset, animated: true)
Robert Koval
Punkte
391
Wenn Sie scrollView irgendwie ändern contentSize (z. B. etwas zu stackView hinzufügen, das sich innerhalb von scrollView befindet), müssen Sie die scrollView.layoutIfNeeded()
vor dem Blättern, sonst geschieht nichts.
Ejemplo:
scrollView.layoutIfNeeded()
let bottomOffset = CGPoint(x: 0, y: scrollView.contentSize.height - scrollView.bounds.size.height + scrollView.contentInset.bottom)
if(bottomOffset.y > 0) {
scrollView.setContentOffset(bottomOffset, animated: true)
}
nico
Punkte
9578
Mauro García
Punkte
107
Schnell:
Sie könnten eine Erweiterung wie diese verwenden:
extension UIScrollView {
func scrollsToBottom(animated: Bool) {
let bottomOffset = CGPoint(x: 0, y: contentSize.height - bounds.size.height)
setContentOffset(bottomOffset, animated: animated)
}
}
Verwendung:
scrollView.scrollsToBottom(animated: true)
Pieter
Punkte
521