我正在实现一个下载图像并将它们保存在应用程序数据库中的代码,
我有一个对象数组,每个对象都包含图像 url 和一些其他信息。要下载图像,我使用类库 AFImageRequestOperation.h AFNetworking。
我的代码下载数据并将其保存在数据库中,但需要通知用户下载了哪个图像,例如:如果我有一个包含 5 个对象的数组(在每个对象的上方引用),则必须下载相同的顺序是在数组中,但由于 AFImageRequestOperation 使得异步下载第 4 项可以在第一项之前下载。
简而言之,我想拥有控制权,并且只有在上一个下载完成后才发布下一个下载。
我有一个 for 贯穿对象数组并为每个位置调用一个函数,该函数具有以下代码:
NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:[arrImagem valueForKey:@"urlimagem"]]];
    AFImageRequestOperation *operation = [AFImageRequestOperation imageRequestOperationWithRequest:request imageProcessingBlock:nil success:^(NSURLRequest *request, NSHTTPURLResponse *response, UIImage *image){
        Imagens *imagem = (Imagens *)[NSEntityDescription insertNewObjectForEntityForName:@"IMAGENS" inManagedObjectContext:managedObjectContext];
        // Save Image
        NSData *imageData = UIImageJPEGRepresentation(image, 90);
        [imagem setCategoria:cat];
        [imagem setTitulo:[arrImagem valueForKey:@"titulo"]];
        [imagem setDescricao:[arrImagem valueForKey:@"descricao"]];
        [imagem setImagem:imageData];
        NSError *error;
        if(![managedObjectContext save:&error]){
            NSLog(@"houve um erro muito grave");
            //return false;
        }else{
            NSLog(@"Salvou imagem");
        }
    }failure:^(NSURLRequest *request, NSHTTPURLResponse *response, NSError *error){
        NSLog(@"%@", [error localizedDescription]);
    }];
    [operation start];
我不知道我的问题是否很清楚,但基本上我的问题类似于此链接