Когда ваш вход в систему (начался в viewWillLoad
) завершен, вы должны получить некоторый вызов обратного вызова делегата, который сообщит вам, что ваш запрос завершен. Вы обычно указываете delegate
при создании запроса.
Если вы используете NSURLRequest и NSURLConnection
, делегат указывается в одном из:
+ connectionWithRequest:delegate:
– initWithRequest:delegate:
– initWithRequest:delegate:startImmediately:
в зависимости от того, как вы создаете запрос, и обратный вызов делегата для переопределения равен connectionDidFinishLoading:
(или connection:didFailWithError:
в случае ошибок связи).
connectionDidFinishLoading:
- правильное место, где вы должны выдать [self.tableView reloadData];
после обновления источника данных таблицы.
Если вы не используете NSURLRequest
, обратный вызов делегата будет другим.
EDIT:
если ваш mainView
получит необходимые ему данные JSon, вам нужно обновить источник данных таблицы и вызвать reloadData
таблицы.
Действительно, вызов reloadData
снова вызовет numberOfRowsInSection
, но эта информация предоставляется вашим источником данных, поэтому, если он не обновляется для отображения новых данных, которые вы получили, он всегда будет отражать старое значение.
Не могли бы вы предоставить больше информации о вашем источнике данных?