通过Parse.com获取警告

时间:2014-10-08 00:58:38

标签: ios objective-c parse-platform cell fast-enumeration

我正在试图通过enumerateObjectsUsingBlock访问NSArray上的每个项目,因为它允许我使用快速枚举和评估索引。

当我使用findObjectsInBackgroundWithBlock时,

  

我收到警告:主要正在执行长时间运行的操作   线。打破warnBlockingOperationOnMainThread()进行调试。

正如我认为在后台使用不阻止Mainthread。这是我的代码和我正在努力实现它我有两个UIImageView容器,我从该查询的关系结果拉动图像。由于我只有容器,所以最好只评估NSArray的索引。

不确定如何纠正这个警告。

由于

    [query findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error) {
        if (objects != 0) {
            [objects enumerateObjectsUsingBlock:^(PFUser *object, NSUInteger idx, BOOL *stop) {
                if (idx == 0) {
                    PFFile *userProfile = [object objectForKey:@"userPic"];
                    cell.promoter1.file = userProfile;
                    cell.promoter1.contentMode = UIViewContentModeScaleAspectFit;
                    [cell.promoter1 loadInBackground];                                                                                    
                    cell.promoter1Name.textAlignment = NSTextAlignmentCenter;
                    cell.promoter1Name.lineBreakMode = NSLineBreakByWordWrapping;
                }
                if (idx == 1) {
                    PFFile *userProfile = [object objectForKey:@"userPic"];

                    cell.promoter2.file = userProfile;
                    cell.promoter2.contentMode = UIViewContentModeScaleAspectFit;
                    [cell.promoter2 loadInBackground];
                    NSAttributedString *promoter1Name;                                                                                  
                    cell.promoter2Name.textAlignment = NSTextAlignmentCenter;
                    *stop = YES;
                }
            }];
        }
    }];

1 个答案:

答案 0 :(得分:0)

对我的代码进行排查,我意识到findObjectsInBackgroundWithBlock不会导致此警告。

在我的代码的另一部分,我有这个:

PFUser *user = [PFQuery getUserObjectWithId:@"ebwFrl8PcF"];    
[relation addObject:user];
[self.event saveInBackground];

哪个阻止主线程。

我道歉。