如何通过iOS查询从Parse.com检索图像?

时间:2013-05-19 16:52:51

标签: ios uiimageview parse-platform

我正在使用Parse.com来检索我的数据。我想通过pf查询从解析中检索我的图像但是我的方法不起作用。我的UIImageView没有得到任何结果。这是我的代码:

    PFQuery *query = [PFQuery queryWithClassName:@"Class"];
        [query whereKey:@"Yes or No" equalTo:[NSNumber numberWithBool:YES]];
        [query findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error) {


            if (!error) {
                // The find succeeded.
                NSLog(@"Successfully retrieved %d scores.", objects.count);



                for (int i = 0; i < objects.count; i++) {

                    object = [objects objectAtIndex:i];

                    NSString *Property1 = [object objectForKey:@"Property1"];

                    __block UIImage *MyPicture = [[UIImage alloc]init];


                    PFFile *imageFile = [object objectForKey:@"Resimler"];
                    [imageFile getDataInBackgroundWithBlock:^(NSData *data, NSError *error){
                        if (!error) {
                         MyPicture = [UIImage imageWithData:data];

                        }
                    }];

aClass *AC = [[aClass alloc]initWithProperty:Propert1 Picture:MyPicture];
                    [self.MyArray addObject:AC];



  }

            }


        } else {
            // Log details of the failure
            NSLog(@"Error: %@ %@", error, [error userInfo]);
        }


    }];
}

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *CellIdentifier = @"Cell";
    MyViewViewCell *cell = (MyViewCell *)[tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];

    if (cell == nil)
    {
        NSArray *nib = [[NSBundle mainBundle] loadNibNamed:@"Cell" owner:self options:nil];
        cell = [nib objectAtIndex:0];
    }


    aClass *mC = [self.MyArray objectAtIndex:indexPath.row];

    cell.Label.text = mC.Property;

    cell.myImage.image = mC.Picture;
    return cell;
}

修改

At aClass.h
@interface aClass : NSObject
@property(strong)NSString *Property;

@property(strong)UIImage *Resim;

-(id)initWithProperty:(NSString *)aProperty Picture:(UIImage *)aPicture ;
@end

at aClass.m


@implementation Mekan
@synthesize Property, Picture;

-(id)initWithMekanIsmi:(NSString *)aProperty Picture:(UIImage *)aPicture{
    self=[super init];
    if(self){
        self.Property = aProperty;
        self.Picture = aPicture;
    }
    return self;

}
@end

我知道它是一种群发代码,但我必须编写这些代码来说明我指定myImage的位置。所以你可以问你不明白的地方

1 个答案:

答案 0 :(得分:0)

我这样做:

UIImageView *imageView = [[UIImageView alloc] initWithImage:@"default.png"];
[userIcon getDataInBackgroundWithBlock:^(NSData *data, NSError *error) {
  imageView.image = [[UIImage alloc] initWithData:data];
} progressBlock:^(int percentDone) {
    // update progress
}];

您似乎正确地将其分配给UIImage,但从未将该图像设置为UIImageView的图像。