13
-reloadData
をテーブルビューインスタンスで呼び出すと、すべてUITableViewDataSource
が非同期を呼び出しますか? ありがとうございます。Is - [UITableView reloadData]非同期または同期ですか?
-reloadData
をテーブルビューインスタンスで呼び出すと、すべてUITableViewDataSource
が非同期を呼び出しますか? ありがとうございます。Is - [UITableView reloadData]非同期または同期ですか?
このメソッドは、実際にはテーブルからすべてのUITableViewCell
ビューを削除します。テーブルが再描画されると、データソースデリゲートメソッドが呼び出されます。
だから、非同期です。
編集:
実際には、いくつかの呼び出しは同期しています。セクション数が&の行と行の高さが直ちに更新されるため、通話後にcontentSize
が正しく設定されます。一方、tableView:cellForRowAtIndex:
は、テーブルが再描画されるまで呼び出されません。
もし私が配列テーブルビューをバックアップしていた。配列が呼び出される前に配列が更新されている場合、cellForRowAtIndexPathがクラッシュします。これをどのように修正する必要がありますか? – bogardon
@ボガードン私は理解していない - それはなぜクラッシュするのだろうか? – Sulthan
すべての 'cellForRow ...'呼び出しが行われる前にreloadDataが再度呼び出され、新しいセル数<古いセル数の場合はクラッシュします。 'cellForRow'はインデックスの値が高すぎると尋ねます – bendytree