0

UITableViewのリロードに関して非常に複雑な問題が発生しています。

UITableViewは継続的に(10秒近く)サーバーからデータを取得し、UITableViewカスタムセルを含むデータを表示しています。問題は、ユーザー(つまり私)がスクロールしているときに、サーバーからデータをフェッチしているときにエラーが発生しUITableViewてクラッシュし、データがクリアされて再び入力されることです。indexOutOfBoundNSMutableArray

BOOLまた、変数設定YESまたはNOで試してみましたscrolling delegates。この場合、スクロールUITableViewするとスクロール方向のセルが削除され、10秒後にすべてのセルにデータが表示されます。

しかし、私が欲しいのは、ユーザーがスクロールしUITableViewても、作成されたセルはどれも非表示にならないということです。scrollEnabledそのための解決策ではありません。

私を助けてください!

ありがとう :)

4

2 に答える 2

2

これは、スレッドの安全でないコードの問題です。データ ソースがアクティブに使用されている間に変更されている。

安全な解決策の 1 つは、解析後にすべてのデータを一部の DB (sqlite/Coredata) にフィードし、db からテーブル データソースをリロードして、テーブルの reloadData を呼び出すことです。このようにして、データソース配列を使用していたときに-空にはなりません。

幸運を祈ります

于 2012-06-20T13:33:31.980 に答える
0

indexOutOfBound の場合は、指定した numberofrow を確認する必要があることを意味し、配列が rowatindex のセルで受け取るよりも多いことを確認する必要があります。それを確認してください。

于 2012-06-20T13:34:09.053 に答える