Ich versuche, eine Pull-to-Refresh-Funktion in einer UITableView in einem UIViewController zu implementieren. Ich kann keinen UITableViewController verwenden, da ich möchte, dass UITableView eine kleinere Unteransicht im View Controller ist, mit einigen anderen Dingen darüber. Ich nehme an, dass dies möglich ist, aber hat jemand eine Implementierung davon gesehen?
ios
objective-c
iphone
uitableview
pull-to-refresh
Daniel Robinson
quelle
quelle
tableView.insertSubview(refreshControl, atIndex: 0)
anstelle vontableView.addSubview(refreshControl)
Ziel-C :
Auf diese Weise können Sie Pull-to-Refresh für die Tabellenansicht implementieren. Gleich wie bei der Sammlungsansicht. Ersetzen Sie einfach die Zuordnung der Tabellenansicht durch die Sammlungsansicht.
quelle
Diese Lösung von @berik funktioniert einwandfrei, aber der UIController wird über dem UITableViewController angezeigt. Der Weg, dies zu beheben, besteht darin, diese Änderung vorzunehmen:
quelle
refreshControl
verschwinden und nicht unter demtableView
. Ich habe dies behoben durch: tableView.insertSubview (refreshControl, atIndex: 0) anstelle von tableView.addSubview (refreshControl)Ich habe EGORefreshTableHeaderView mit einem UIViewController und einer einfachen Tabellenansicht implementiert. Der Trick besteht darin, dass an den Stellen, an denen EGO eine Bildlaufansicht als Parameter verwendet, die Tabellenansicht selbst von der Bildlaufansicht erbt.
Es erfordert nur das und ein paar zusätzliche Verbindungen :)
Hoffe das hilft.
quelle
Wenn Sie das UIRefreshControl in der loadView- Methode von viewController erstellen , funktioniert anscheinend alles einwandfrei . Das UIRefreshControl verhält sich wie es sollte. Getestet mit iOS 7.1 und iOS 8.2
quelle
Am Ende habe ich ODRefreshControl verwendet . Es benötigt keinen Hack wie oben
tableView.backgroundView = refreshControl
, funktioniert fast genauso und bietet eine besser aussehende Benutzeroberfläche.quelle