Ich habe UITableView
mit etwas Inhalt, der in asynchron Weise geladen wird. Wenn der Benutzer das Gerät dreht, muss ich [tableView reloadData]
in -willRotateToInterfaceOrientation
Methode machen. ReloadData funktioniert in meinem Fall asynchron.Wie kann MainThread warten, bis eine asynchrone Aktion ausgeführt wird?
Ich verstehe, dass reloadData funktioniert im Haupt-Thread, aber es feuert CellForRowAtIndexPath, die in meinem Fall async funktioniert.
Also die Frage ist, wie man Main Thread warten bis UITableView's reloadData
endet.
Ich verstehe, dass reloadData im Haupt-Thread aufgerufen wird. Aber realodData ruft cellForRowAtIndexPath auf ... und diese Methode muss einige Daten asynchron laden. –
Ich sehe, so dass Sie nicht warten, dass reloadData abgeschlossen wird, sondern die asynchronen Aufgaben, die reloadData zum Abschluss abfeuert. Könnten Sie Ihre Frage entsprechend abändern? NSRunLoop ist immer noch was du willst, obwohl ich nicht verstehe, warum du deine Hauptthread-Geisel halten willst, während asynchrone Daten geladen werden. – NSProgrammer
Ein Haupt-Thread muss auf reloadData warten, da dies die Rotationsanimation angenehm macht. –