所以我想从Parse使用PFRelation查询加载用户名列表。这个想法是加载这个列表,然后在调用它的视图控制器中使用。 (通过self.yourFriendArray)。原来的问题是,当我在视图控制器的viewDidLoad方法中调用此函数时,self.yourFriendArray数组为零,因为查询同步运行并且不会更新它。iOS多线程与解析和dispatch_async
所以我的计划是使用这个findObjectsInBackgroundWithBlock
调用中的主线程,但我还没有得到所需的输出。
我的多线程不正确吗?
此外,我只是习惯于提出有关堆栈溢出的问题 - 如果我问这个问题有什么问题,请在评论中建议一些更新!感谢你们!
[[friendsRelation query] findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error) {
for (PFUser *user in objects) {
NSString *username = user.username;
[tempArray addObject:username];
dispatch_async(dispatch_get_main_queue(), ^{
[self.yourFriendArray addObject:username];
});
}
}];
谢谢回答!所以,是啊,我正试图加载数据到一个tableView,有点像SnapChat。我试过这个,但它仍然不起作用。我认为我的问题是Parse的findObjectsInBackground函数如何异步运行以及我的视图在函数运行之前如何加载。 – sebster 2014-09-18 17:58:00
但是'reloadData'应该在对象被提取后重新加载它。 @ user3238594 – Dehli 2014-09-18 17:58:58
我认为解析异步执行查询,但随后在主线程中执行该块。所以这应该是全部。你如何做查询?你有没有物体? – dadederk 2014-09-18 18:33:47