parse docs ios objective-c parse.com pffile

ios - docs - No puedo obtener una imagen de PFFile



docs parse platform (1)

Parse.com acaba de actualizar sus SDK para admitir el almacenamiento local. Pero después de instalar nuevos SDK, he tenido algunos problemas con PFFile. He usado el mismo método durante mucho tiempo, pero ahora que estoy usando el nuevo SDK no puedo hacerlo funcionar.

Aquí está mi código:

archivo .h

@property (strong, nonatomic) IBOutlet PFFile *iconPhoto;

archivo .m

cell.iconPhoto.image = [UIImage imageNamed:@"placeholder.png"]; // placeholder image cell.iconPhoto.file = (PFFile *)object[@"icon"]; // remote image [cell.iconPhoto loadInBackground:^(UIImage *image, NSError *error) { cell.iconPhoto.image = image; cell.userInteractionEnabled = YES; }];

Cuando corro, obtengo estos errores (enlace)

¿Alguien tiene los mismos problemas?

ACTUALIZAR:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{ }); static NSString *CellIdentifier = @"Cell"; MainTVCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath]; PFObject *object = [self.currentCategories objectAtIndex:indexPath.row]; cell.mainLabel.text = object[@"name"]; cell.userInteractionEnabled = YES; if (![object[@"icon"] isEqual:[NSNull null]]) { cell.image = [UIImage imageNamed:@"loading.png"]; // placeholder image cell.iconPhoto = (PFFile *)object[@"icon"]; // remote image [cell.iconPhoto getDataInBackgroundWithBlock:^(NSData *imageData, NSError *error) { if (!error && imageData) { cell.image = [UIImage imageWithData:imageData]; cell.userInteractionEnabled = YES; } }]; } return cell; }


Encontré una solución yo mismo.

PFFile *file = (PFFile *)object[@"icon"]; [file getDataInBackgroundWithBlock:^(NSData *data, NSError *error) { cell.iconImageView.image = [UIImage imageNamed:@"placeholder.png"]; // placeholder image cell.iconImageView.image = [UIImage imageWithData:data]; cell.userInteractionEnabled = YES; }];

Esto cargará las imágenes. Lo raro es que no se ejecutará en el simulador ... Pero funciona perfectamente en iPhone.