RestKit을 사용하여 IOS에서 앱을 개발 중입니다. 데이터는 성공적으로 검색되지만 테이블보기에 표시 할 수 없습니다 (즉 행이 비어 있음). 테이블을 스크롤하면 행이 올바르게 표시됩니다 (즉, 데이터가 있습니다!).RestKit을 사용하는 동안 IOS의 테이블보기에 데이터를 표시하는 방법
당신은 코드에서 더 나은 아이디어를 얻을 것입니다. (그냥 간단하게하기 위해, 내가 코드의 거친 윤곽을 제공, 더 많은 코드가 필요한 경우 알려 주시기 바랍니다.)
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!
요청은로드
요청이 전송
요청이 그래서 문제가, 방법은 올바른 순서로 실행되지 않습니다되어
을 didLoadResponsetable_inside 시작했다. 왜 이런 일이 일어나고있는거야? 그것을 해결하는 방법. 그렇게하는 것이 더 좋습니다. 나는 IOS에 익숙하지 않아 그것을 이해할 수 없었다.
저는 Peter Kelly의 대답을 시도했는데 잘되었습니다. 그러나 레코드가 성공적으로 검색 될 때까지 tableView 메소드를 실행하면 안됩니다. 실행 순서를 변경하는 방법.
도움을 주시면 큰 도움이 될 것입니다.
우수. 빨리 대답 해주셔서 감사합니다. 당신의 솔루션은 작동합니다 !!. 그러나 데이터의 크기가 너무 크면 restKit의 응답에 많은 시간이 걸립니다. 데이터가 검색 될 때까지는 행이 빈 채로 남아 추악한 모양을 유지합니다. 전체 데이터가 성공적으로 검색 될 때까지 표가 표시되지 않는 대안이 있습니까? 고맙습니다. :-) –
문제 없습니다. (당신이 그것을 좋아한다면 대답을 upvote 받아 받아 들일 수 있습니다 ...). 나는 아마도 당신의 새로운 문제에 대해 다른 질문을 던질 것입니다. 제가 말한 의견에서 토론하려고하는 것보다 낫습니다. 데이터가로드 될 때까지 회 전자 컨트롤을 표시 할 수 있습니다. –