0

みなさん、こんにちは。NSFetchedResultsControllerDelegateを使用してテーブルビューを更新しています。例えば、

//テーブルビューにレコードがありません。

2009-11-15 12:25:48.328 XXX [36890:207]0//更新前のセクション数// テーブルビューの呼び出し更新の開始

2009-11-15 12:25:54.277 XXX [36890:207] insert0//新しいセクション を挿入//データの挿入を開始

2009-11-15 12:25:54.278 XXX [36890:207] NSFetchedResultsChangeInsert:行:31セクション:0 2009-11-15 12:25:54.278 XXX [36890:207] NSFetchedResultsChangeInsert:行:30セクション:0 2009- 11-15 12:25:54.278 XXX [36890:207] NSFetchedResultsChangeInsert:行:45セクション:0 2009-11-15 12:25:54.279 XXX [36890:207] NSFetchedResultsChangeInsert:行:62セクション:0 2009-11- 15 12:25:54.279 XXX [36890:207] NSFetchedResultsChangeInsert:行:12セクション:0 2009-11-15 12:25:54.280 XXX [36890:207] NSFetchedResultsChangeInsert:行:54セクション:0 2009-11-15 12 :25:54.280 XXX [36890:207] NSFetchedResultsChangeInsert:行:2セクション:0 2009-11-15 12:25:54.280 XXX [36890:207] NSFetchedResultsChangeInsert:行:14セクション:0 2009-11-15 12:25 :54.281 XXX [36890:207] NSFetchedResultsChangeInsert:行:63セクション:0 2009-11-15 12:25:54.281 XXX [36890:207] NSFetchedResultsChangeInsert:行:27セクション:0 2009-11-15 12:25:54.281 XXX [36890:207] NSFetchedResultsChangeInsert:行:5セクション:0 2009-11-15 12:25:54.282 XXX [36890:207] NSFetchedResultsChangeInsert:行:7セクション:0 2009 -11-15 12:25:54.282 XXX [36890:207] NSFetchedResultsChangeInsert:行:44セクション:0 2009-11-15 12:25:54.283 XXX [36890:207] NSFetchedResultsChangeInsert:行:51セクション:0 2009-11 -15 12:25:54.283 XXX [36890:207] NSFetchedResultsChangeInsert:行:9セクション:0 2009-11-15 12:25:54.283 XXX [36890:207] NSFetchedResultsChangeInsert:行:29セクション:0 2009-11-15 12:25:54.284 XXX [36890:207] NSFetchedResultsChangeInsert:行:64セクション:0 2009-11-15 12:25:54.284 XXX [36890:207] NSFetchedResultsChangeInsert:行:22セクション:0 2009-11-15 12: 25:54.284 XXX [36890:207] NSFetchedResultsChangeInsert:行:25セクション:0 2009-11-15 12:25:54.285 XXX [36890:207] NSFetchedResultsChangeInsert:行:57セクション:0 2009-11-15 12:25:54.285 XXX [36890:207] NSFetchedResultsChangeInsert:行:50セクション:0 2009-11-15 12:25:54.286 XXX [36890:207] NSFetchedResultsChangeInsert:行:13セクション:0 2009 -11-15 12:25:54.286 XXX [36890:207] NSFetchedResultsChangeInsert:行:8セクション:0 2009-11-15 12:25:54.287 XXX [36890:207] NSFetchedResultsChangeInsert:行:61セクション:0 2009-11 -15 12:25:54.287 XXX [36890:207] NSFetchedResultsChangeInsert:行:15セクション:0 2009-11-15 12:25:54.287 XXX [36890:207] NSFetchedResultsChangeInsert:行:53セクション:0 2009-11-15 12:25:54.288 XXX [36890:207] NSFetchedResultsChangeInsert:行:37セクション:0 2009-11-15 12:25:54.288 XXX [36890:207] NSFetchedResultsChangeInsert:行:34セクション:0 2009-11-15 12: 25:54.288 XXX [36890:207] NSFetchedResultsChangeInsert:行:52セクション:0 2009-11-15 12:25:54.289 XXX [36890:207] NSFetchedResultsChangeInsert:行:58セクション:0 2009-11-15 12:25:54.289 XXX [36890:207] NSFetchedResultsChangeInsert:行:4セクション:0 2009-11-15 12:25:54.290 XXX [36890:207] NSFetchedResultsChangeInsert:行:41セクション:0 2009 -11-15 12:25:54.290 XXX [36890:207] NSFetchedResultsChangeInsert:行:49セクション:0 2009-11-15 12:25:54.290 XXX [36890:207] NSFetchedResultsChangeInsert:行:39セクション:0 2009-11 -15 12:25:54.291 XXX [36890:207] NSFetchedResultsChangeInsert:行:26セクション:0 2009-11-15 12:25:54.291 XXX [36890:207] NSFetchedResultsChangeInsert:行:20セクション:0 2009-11-15 12:25:54.291 XXX [36890:207] NSFetchedResultsChangeInsert:行:1セクション:0 2009-11-15 12:25:54.292 XXX [36890:207] NSFetchedResultsChangeInsert:行:21セクション:0 2009-11-15 12: 25:54.292 XXX [36890:207] NSFetchedResultsChangeInsert:行:65セクション:0 2009-11-15 12:25:54.293 XXX [36890:207] NSFetchedResultsChangeInsert:行:38セクション:0 2009-11-15 12:25:54.293 XXX [36890:207] NSFetchedResultsChangeInsert:行:59セクション:0 2009-11-15 12:25:54.293 XXX [36890:207] NSFetchedResultsChangeInsert:行:47セクション:0 2009 -11-15 12:25:54.294 XXX [36890:207] NSFetchedResultsChangeInsert:行:28セクション:0 2009-11-15 12:25:54.294 XXX [36890:207] NSFetchedResultsChangeInsert:行:3セクション:0 2009-11 -15 12:25:54.295 XXX [36890:207] NSFetchedResultsChangeInsert:行:55セクション:0 2009-11-15 12:25:54.295 XXX [36890:207] NSFetchedResultsChangeInsert:行:23セクション:0 2009-11-15 12:25:54.295 XXX [36890:207] NSFetchedResultsChangeInsert:行:56セクション:0 2009-11-15 12:25:54.296 XXX [36890:207] NSFetchedResultsChangeInsert:行:40セクション:0 2009-11-15 12: 25:54.296 XXX [36890:207] NSFetchedResultsChangeInsert:行:16セクション:0 2009-11-15 12:25:54.296 XXX [36890:207] NSFetchedResultsChangeInsert:行:6セクション:0 2009-11-15 12:25:54.297 XXX [36890:207] NSFetchedResultsChangeInsert:行:60セクション:0 2009-11-15 12:25:54.297 XXX [36890:207] NSFetchedResultsChangeInsert:行:17セクション:0 2009 -11-15 12:25:54.298 XXX [36890:207] NSFetchedResultsChangeInsert:行:11セクション:0 2009-11-15 12:25:54.298 XXX [36890:207] NSFetchedResultsChangeInsert:行:33セクション:0 2009-11 -15 12:25:54.298 XXX [36890:207] NSFetchedResultsChangeInsert:行:19セクション:0 2009-11-15 12:25:54.299 XXX [36890:207] NSFetchedResultsChangeInsert:行:46セクション:0 2009-11-15 12:25:54.299 XXX [36890:207] NSFetchedResultsChangeInsert:行:36セクション:0 2009-11-15 12:25:54.299 XXX [36890:207] NSFetchedResultsChangeInsert:行:42セクション:0 2009-11-15 12: 25:54.300 XXX [36890:207] NSFetchedResultsChangeInsert:行:18セクション:0 2009-11-15 12:25:54.300 XXX [36890:207] NSFetchedResultsChangeInsert:行:48セクション:0 2009-11-15 12:25:54.301 XXX [36890:207] NSFetchedResultsChangeInsert:行:43セクション:0 2009-11-15 12:25:54.301 XXX [36890:207] NSFetchedResultsChangeInsert:行:0セクション:0 2009 -11-15 12:25:54.301 XXX [36890:207] NSFetchedResultsChangeInsert:行:10セクション:0 2009-11-15 12:25:54.302 XXX [36890:207] NSFetchedResultsChangeInsert:行:32セクション:0 2009-11 -15 12:25:54.302 XXX [36890:207] NSFetchedResultsChangeInsert:行:35セクション:0 2009-11-15 12:25:54.302 XXX [36890:207] NSFetchedResultsChangeInsert:行:24セクション:00 2009-11-15 12:25:54.302 XXX [36890:207] NSFetchedResultsChangeInsert:行:35セクション:0 2009-11-15 12:25:54.302 XXX [36890:207] NSFetchedResultsChangeInsert:行:24セクション:00 2009-11-15 12:25:54.302 XXX [36890:207] NSFetchedResultsChangeInsert:行:35セクション:0 2009-11-15 12:25:54.302 XXX [36890:207] NSFetchedResultsChangeInsert:行:24セクション:0

//更新を終了します//tableviewがクラッシュしました

2009-11-15 12:25:54.303 XXX [36890:207] *キャッチされなかった例外'NSRangeException'が原因でアプリを終了しています。理由:'* -[NSCFArray objectAtIndex:]:インデックス(65)が境界を超えています(1)' 2009- 11-15 12:25:54.303 XXX [36890:207]スタック:(32556123、2434330441、32640059、32639898、2149577、1745447、..)

**テーブルビューがクラッシュしました。また、コードでreloadDataを呼び出さない。

更新が完了した後にデータをリロードし、FetchResultsControllerDelegateからのすべての更新イベントを無視すると、すべてが正常に機能します。助けてください!

4

2 に答える 2

0

nsfetchedresultscontroller が複数のセクションを挿入したい場合、新しいセクションの挿入とその新しいセクションへの新しい行の挿入の両方の呼び出しをデリゲートに送信します。ただし、テーブルビューは新しいセクションの挿入のみを必要とします。これを解決するには、すべての新しいセクションを含むセットを作成する必要があります。新しい行を挿入すると、挿入する必要があるか、今挿入するかがわかります。

于 2009-11-28T13:58:01.263 に答える
0

これはバグです。https://devforums.apple.com/message/118418#118418をお読みください。

于 2009-11-15T18:10:28.517 に答える