Ich habe ein Problem beim Implementieren von UIRefreshControl - in dem, wenn Sie herunterziehen, funktioniert der 'Blob' völlig einwandfrei und die Aktualisierung Spinner funktioniert gut, aber die Tabelle nicht scrollen bis zu der Spinner beim Auffrischen. Stattdessen bleibt sie, wo es war, bis die Auffrischung abgeschlossen ist, an welcher Stelle es auf den oberen Rand des Bildschirms gibtUIRefreshControl: UITableView 'stecken' während der Aktualisierung
Der Code, der die erfrischende tut, ist:
- (void)viewDidLoad {
self.refreshControl = [[UIRefreshControl alloc] init];
[self.refreshControl addTarget:self action:@selector(refreshView:)forControlEvents:UIControlEventValueChanged];
}
- (void)refreshView:(UIRefreshControl *)refresh {
dispatch_async(dispatch_get_main_queue(), ^{
(...code to get new data here...)
[self.refreshControl endRefreshing];
}
}
ich, dass ohne dispatch_async gefunden, auch der Refresh-Spinner funktioniert nicht - und das Bit, das heruntergezogen wurde, erscheint nur weiß
Hat jemand irgendwelche Hinweise, was ich falsch machen könnte? Alle Beispiele für die Implementierung ich gefunden habe, scheint zu passen, was ich tue, und ich habe nichts in der API-Dokumentation gefunden, schlage ich vor, bin etwas aus
Aber ich ** sagte Ihnen ** UIKit aus dem Haupt-Thread aufrufen! –