Я разрабатываю приложение в IOS, используя RestKit . Данные получены успешно, но я не могу отобразить их в представлении таблицы (то есть строки пусты). когда я прокручиваю таблицу, строки отображаются правильно (то есть данные есть !!).
Вы получите лучшую идею из кода. (Для простоты я представил приблизительный набросок кода, дайте мне знать, если потребуется больше кода).
TableViewController.m
- (void)viewDidLoad
{
NSLog(@"viewDidLoad_inside!!");
RKRequest* request = [[RKClient sharedClient] get:@"/urlstring" delegate:self];
[request send];
NSLog(@"request is sent");
[super viewDidLoad];
}
- (void)requestDidStartLoad:(RKRequest *)request {
NSLog(@"request did start Load");
}
- (void)request:(RKRequest *)request didLoadResponse:(RKResponse *)response {
NSLog(@"request didLoadResponse");
......
//rest of the code Logic
......
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
NSLog(@"table_inside!!");
}
код выполняется успешно, но строки таблицы пусты. !!
Выход:
viewDidLoad_inside !!
запрос запущен Загрузить
запрос отправлен
table_inside
запрос didLoadResponse
Так что проблема в том, что методы не выполняются в правильном порядке. почему это происходит? Как это решить. Есть ли лучший подход для этого. Я новичок в IOS, поэтому не могу понять.
Я попробовал ответ Питера Келли, и это прекрасно работает. Но метод tableView не должен выполняться до тех пор, пока записи не будут успешно получены. Как изменить последовательность выполнения.
Любая помощь будет принята с благодарностью.