Infinite Scroll auf iOS mit Swift

7

Ich bin ein iOS-Neuling und ich würde gerne wissen, wie man erkennt, wenn der Benutzer scrollt und das Ende eines UITableView erreicht, damit ich neue Daten in die Tabelle laden kann.

Ich möchte auch wissen, wo eine solche Methode implementiert werden sollte (die Klasse der Tabelle oder der View-Controller, in dem diese Tabellenansicht existiert) Prost!

    
Luca Boieru 29.09.2014, 17:36
quelle

3 Antworten

14

Sie können -(void) tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath verwenden und prüfen, ob die letzte Zelle in der Datenquelle der TableView angezeigt wird.

    
ansible 29.09.2014, 17:49
quelle
4

iOS TableViewController erledigt das automatisch. Es fragt seine Datenquelle nur nach den aktuell sichtbaren Zeilen der Tabelle ( tableview.cellForRowAtIndexPath )

Siehe Dokumentation für die UITableViewDatasource-Protokollreferenz

>     
zisoft 29.09.2014 17:46
quelle
3

Wenn Sie ein "bekanntes Dataset" haben (z. B. müssen Sie keinen Netzwerkaufruf tätigen, um neue Daten abzurufen), wird es, wie auch @zizoft sagt, automatisch in tableview.cellForRowAtIndexPath

Wenn Sie jedoch einen "unbekannten Datensatz" haben (wie in, Sie müssen Daten aus dem Internet herunterziehen), müssen Sie etwas interessanteres tun - @ Ansible Vorschlag wäre in diesem Fall angemessen sein.

    
bryanjclark 29.09.2014 17:55
quelle

Tags und Links