XCode で iPhone/iPad アプリを開発しているときにタイトルのようなエラーメッセージに遭遇しました。
2011-09-16 17:21:54.001 TestApp[7007:207] *** Assertion failure in -[UITableView _createPreparedCellForGlobalRow:withIndexPath:], /SourceCache/UIKit_Sim/UIKit-1448.89/UITableView.m:5678
次の行には以下のようなエラーメッセージが。
2011-09-16 17:21:54.003 TestApp[7007:207] *** Terminating app due to uncaught exception ‘NSInternalInconsistencyException’, reason: ‘UITableView dataSource must return a cell from tableView:cellForRowAtIndexPath:’
なかなか原因がつかめず苦労しましたが、ようやく、わかりました。
1.テーブルセルのXIBファイルをコピーして増やした。
2.画面上のコントロール等を貼り付け直した。
3.親画面の IBOutlet に新しいテーブルセルオブジェクトを連結するのを忘れた。
4.テーブルセルオブジェクトが生成されても参照できないため nil が返された。
5.アサーションエラーや、色々なエラーが発生。
というわけで、XIBファイルの連結状態を直してコンパイルして、解決しました。
0件のコメント