Приложение падает при прокрутке при попытке использовать UITableViewDataSource - PullRequest
0 голосов
/ 11 мая 2011

Просто поиграйте с некоторым примером кода и столкнитесь с неожиданной проблемой с UITableViewDataSource.

Мое тестовое приложение - это базовый шаблон iPhone "Панель навигации" для отображения списка.Я добавил подкласс NSObject для реализации UITableViewDataSource, встроил этот класс в RootViewController.xib и подключил его к выходу источника данных TableView.

Приложение запускается нормально.DataSource инициализируется, а табличное представление заполняется первыми 10 строками.Журнал:

2011-05-11 10:20:03.367 JustAList[10562:207] JALMainViewDataSource init
2011-05-11 10:20:03.375 JustAList[10562:207] cellForRowAtIndexPath <JALMainViewDataSource: 0x5d23730>
2011-05-11 10:20:03.378 JustAList[10562:207] cellForRowAtIndexPath <JALMainViewDataSource: 0x5d23730>
2011-05-11 10:20:03.380 JustAList[10562:207] cellForRowAtIndexPath <JALMainViewDataSource: 0x5d23730>
2011-05-11 10:20:03.381 JustAList[10562:207] cellForRowAtIndexPath <JALMainViewDataSource: 0x5d23730>
2011-05-11 10:20:03.383 JustAList[10562:207] cellForRowAtIndexPath <JALMainViewDataSource: 0x5d23730>
2011-05-11 10:20:03.384 JustAList[10562:207] cellForRowAtIndexPath <JALMainViewDataSource: 0x5d23730>
2011-05-11 10:20:03.384 JustAList[10562:207] cellForRowAtIndexPath <JALMainViewDataSource: 0x5d23730>
2011-05-11 10:20:03.385 JustAList[10562:207] cellForRowAtIndexPath <JALMainViewDataSource: 0x5d23730>
2011-05-11 10:20:03.385 JustAList[10562:207] cellForRowAtIndexPath <JALMainViewDataSource: 0x5d23730>
2011-05-11 10:20:03.386 JustAList[10562:207] cellForRowAtIndexPath <JALMainViewDataSource: 0x5d23730>

Как только я прокручиваюсь (т. Е. Требуется новая ячейка), приложение вылетает:

2011-05-11 10:20:06.249 JustAList[10562:207] -[__NSCFTimer tableView:cellForRowAtIndexPath:]: unrecognized selector sent to instance 0x5d23730
2011-05-11 10:20:06.379 JustAList[10562:207] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSCFTimer tableView:cellForRowAtIndexPath:]: unrecognized selector sent to instance 0x5d23730'

Это просто вызывается cellForRowAtIndexPath 10 раз подряд без проблем, теперьтам написано: нераспознанный селектор?

Возможно, это связано с тем, как я инициализирую (т.е. неявно из nib)?Возможно это преждевременно выпущено?Хм ... есть идеи, чтобы проверить, но хотел бы сначала опубликовать вопрос здесь, прежде чем тратить слишком много времени (на самом деле я собирался попробовать что-то совершенно другое, не ожидал этой проблемы!).

Надеюсь, кто-то можетПомогите?Ура!

1 Ответ

0 голосов
/ 07 сентября 2011

Я решил это для себя почти сразу (см. Мой собственный комментарий).

Спасибо за напоминание 'idz'.Я не смог установить его как ответ немедленно - если я правильно помню, SO сказал, что я должен был ждать 24 часа, прежде чем задавать вопрос в качестве ответа.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...