0
我正在开发使用RestKit在IOS某个应用显示在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方法。如何改变执行顺序。
任何帮助将不胜感激。
大。谢谢你这么快速的回答。您的解决方案可以运作但是如果数据的大小太大,那么restKit的响应需要很长时间。在检索数据之前,行保持空白,以致看起来很丑。除非成功检索整个数据,否则有哪些表格不会显示?再次感谢。 :-) – 2012-03-13 09:56:23
没问题。 (如果你喜欢它,你可以升级并接受答案......)。我可能会问你新问题的另一个问题 - 比试图在我说的评论中讨论它更好。您可以显示一个微调控件,直到数据被加载。 – 2012-03-13 09:58:19