ist es möglich einen callback, wenn ein UITableView reload gemacht wird?
Ich bin nachladen einige Zellen in meiner Tabelle anzeigen. Nach dem reload ist getan, ich möchte, um so zu scrollen, dass Sie sichtbar sind. Ich bin mir bewusst, scrollToRowAtIndexPath:atScrollPosition: Methode. Aber ich musst es nach dem reload als getan, wie gesagt, reload wird ändern von Zeilenhöhen.
Hier sind einige Fragen, aber Sie weiß nicht Recht meine Frage beantworten.
UITableView , Scrollen Sie nach unten auf neu laden?
Wie zu Beginn UITableView auf die Letzte Zelle
BEARBEITEN -- Mein laden nicht einfügen oder löschen von Zeilen. Eher, ich bin zurückladen eine oder mehrere Zellen zu reflektieren aktualisierte Informationen.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Hier sind einige hacky Weise Sie es tun könnte:
1), Wenn Sie anrufen reloadData, Ihre cellForRowAtIndexPath: delegieren-Funktion wird aufgerufen werden, einmal für jede sichtbare Zelle. Sie zählen könnten und diese dann eine Aktion auslösen, nachdem die Funktion aufgerufen wurde oft genug.
2) ich Wette, einige von den anderen UITableViewDelegate Funktionen auch aufgerufen, in einer deterministischen Art und Weise. Vielleicht können Sie rufen Sie Ihren refresh-Funktion in einem von diesen, vielleicht mit einer kleinen Verzögerung.
3) konnte Man auch mit performSelector:withObject:afterDelay: nach [tableView reloadData] und verwenden Sie einige hartcodierte Verzögerung.
Nicht die ideale Lösung aber ich bekommen haben um dieses mithilfe einer UIView animation und den entsprechenden Abschluss callback. Ich Stelle dies in einer UITableView Kategorie. Funktioniert wie man es erwarten würde.