В Xcode 4.2 нет ничего особенного, что могло бы иметь здесь какое-то значение, поэтому вам следует обратить внимание на другие источники, которые вы нашли, даже если они ссылаются на другие версии Xcode.
Он не имеетбыть [self.tableView reloadData]
точно.Вы отправляете объект табличного представления сообщение reloadData
.Доступ к этому объекту табличного представления - через свойство self, через переменную экземпляра, через свойство другого класса и т. Д. - зависит от вас.
Если у вас уже установлено свойство tableView
вверх, то самый простой способ перезагрузить данные из другого контроллера представления - просто отправить объект табличного представления сообщение reloadData
напрямую.Так, например, если метод в ViewControllerFoo
имеет указатель на ViewControllerBar
с именем bar
и знает, что должен перезагрузить представление таблицы, он может вызвать [bar.tableView reloadData]
.
Если вы этого не сделаетенастроив свойство, вы можете создать его самостоятельно или создать метод reloadData
на контроллере представления, содержащий табличное представление, которое делает это от имени других контроллеров представления.
Однако эти подходы смешиваютсялогика и представление, что обычно довольно плохая архитектура.Если один контроллер представления знает, что другой контроллер представления должен обновлять свое представление, то, скорее всего, вам следует выделить часть этой логики в третий класс, который не зависит от какого-либо конкретного контроллера представления.Этот третий класс может передавать уведомления, или ваши контроллеры представления могут прослушивать изменения своего состояния через KVO.