Почему у вас пустые клетки? Используете ли вы последовательную технику для контроля как количества ячеек в вашей таблице, так и их содержания?
Если вы используете UITableViewController, то ваш контроллер автоматически объявляется как источник данных tableview. Если вы используете UIViewController, то вы объявите его как соответствующий протоколу UITableViewDataSource (и подключите его в Интерфейсном Разработчике).
В любом случае, как источник данных tableview, ваш контроллер должен реализовать два метода:
- tableView: cellForRowAtIndexPath:
- tableView: numberOfRowsInSection:
Предположительно, вы предоставляете данные для представления таблицы с помощью массива или других средств внутри -tableview: cellForRowAtIndexPath :. Внутри этого метода метка ячейки будет установлена из записи в вашем массиве. А внутри tableView: numberOfRowsInSection: вы будете делать что-то вроде [myArray count], чтобы вернуть количество ячеек. tableview: cellForRowAtIndexPath будет вызываться столько раз, сколько вы скажете (продиктовано тем, что вы предоставляете в tableview: numberOfRowsInSection :). Если массив источника данных изменяется, и вы хотите отразить изменения в вашем табличном представлении, тогда вы можете вызвать
[self.tableview reloadData]; //if inside a UITableViewController
[self.myTableViewOutlet reloadData]; //if inside a UIViewController
Обратите внимание, что reloadData перезагружает весь просмотр таблицы, поэтому в некоторых случаях это может быть вычислительно дорого. В этом случае вместо вызова reloadData вы можете сосредоточиться на отдельных строках с помощью метода: deleteRowsAtIndexPaths: withRowAnimation: (см. Ссылка на класс UITableView )