Я прочитал каждый пост здесь на SO, касающийся UITableView и reloadData, и ничего, что я нашел, не сработало для меня.
В конструкторе пользовательского интерфейса у меня есть xib-файл UIViewController с UIView в нем, а на этом UIView - UITableView. Мой подкласс UIViewController - это ссылки на владельца файла для XIB. Мой подкласс - UITableViewDataSource и UITableViewDelegate, и я подключил dataSource и делегирую ссылки на выходы, чтобы они указывали на UITableView в построителе пользовательского интерфейса. Я связал UITableView в компоновщике с IBOutlet, определенным в моем подклассе.
Изначально, когда отображается UITableView, базовый NSMutableArray, который я использую в качестве источника данных, не имеет данных, поэтому UITableView пуст, как и ожидалось.
Позже я изменяю массив, добавляя в него данные.
Затем я попробовал следующее, чтобы обновить представление UITableView, но все безрезультатно:
Вызывается [myTableView reloadData] после изменения моего массива
Вызывается [myTableView executeSelectorOnMainThread: @selector (reloadData) withObject: nil waitUntilDone: NO];
Вызывается insertRowsAtIndexPaths в myTableView, думая, что мне, возможно, придется фактически сказать ему, какую строку обновлять.
Ни одна из этих работ. Тем не менее, данные есть, и все, кажется, подключено нормально, так как всякий раз, когда я перетаскиваю UITableView вверх и освобождаю, так что первая строка временно исчезает, внезапно он действительно отображает ожидаемое содержимое, когда возвращается на экран. *
Есть идеи?