在UITableViewController中,我尝试执行以下操作:

在界面中:

@property (nonatomic, strong) NSMutableArray *tickets;


实施中

for(NSString *t in [SharedPreferences getTickets]){

    [[TicketListManager sharedManager] ticket:^(Ticket *sc) {

       [self.tickets addObject:sc];
       [self.tableView reloadData];

        NSLog(@"ticket %d", self.tickets.count);
    } failure:^(RKObjectRequestOperation *operation, NSError *error) {
        NSLog(@"error");
    } ticket:ticketId];
}


当所有对象都成功加载后(我记录了它们),票证的数量始终为0,因此我的表不会更新。有什么想法为什么不将对象保存到数组?我在使用xcode 5,iOS7和Restkit 0.20.3

最佳答案

self.tickets很可能没有初始化。组:

self.tickets = [NSMutableArray array];


创建控制器时。

另外:您的方法ticket:failure:ticket:不太清楚,并且会更好地作为getTicketWithId:success:failure:

除此以外:循环启动网络连接时要小心,因为可能会淹没网络。您可能需要通过编辑http客户端的队列来限制并发连接。

关于ios - 使用Restkit循环发出请求,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22879466/

10-10 22:25