2013-07-17 2 views
1

Я выбрал несколько изображений с iPhone через контроллер ELC. Изображения сохраняются в массиве теперь я хочу, чтобы сохранить этот массив изображений в каталоге документов так, пожалуйста, помогите мне кто-то ..массив изображений в каталоге документов

- (void)elcImagePickerController:(ELCImagePickerController *)picker didFinishPickingMediaWithInfo:(NSArray *)info 
{ 
if ([self respondsToSelector:@selector(dismissViewControllerAnimated:completion:)]){ 
    [self dismissViewControllerAnimated:YES completion:nil]; 
} else { 
    [self dismissModalViewControllerAnimated:YES]; 
} 

for (UIView *v in [_scrollView subviews]) { 
    [v removeFromSuperview]; 
} 

CGRect workingFrame = _scrollView.frame; 
workingFrame.origin.x = 0; 

NSMutableArray *images = [NSMutableArray arrayWithCapacity:[info count]]; 


for(NSDictionary *dict in info) { 

    UIImage *image = [dict objectForKey:UIImagePickerControllerOriginalImage]; 
    [images addObject:image]; 

    UIImageView *imageview = [[UIImageView alloc] initWithImage:image]; 
    [imageview setContentMode:UIViewContentModeScaleAspectFit]; 
    imageview.frame = workingFrame; 

    [_scrollView addSubview:imageview]; 
    [imageview release]; 

    workingFrame.origin.x = workingFrame.origin.x + workingFrame.size.width; 
} 

self.chosenImages = images; 
NSLog(@"values=%@",_chosenImages); 

[_scrollView setPagingEnabled:YES]; 
[_scrollView setContentSize:CGSizeMake(workingFrame.origin.x, workingFrame.size.height)]; 
} 
+0

Как вы попытались сохранить их и что не сработало? – Wain

+0

сэр я не имею идеи, чтобы сохранить массив за один раз. Я просто добавляю одно изображение за раз – Nasir

+0

Предположительно, вы хотите сохранить каждое изображение в виде отдельного файла в указанной папке? – Wain

ответ

1
  1. Для каждого из изображений в images массива, запись в файл файла по одному.

    NSString *aDocumentsDirectory = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject]; 
    
    NSInteger anIndex = 0; 
    for (UIImage *anImage in images) { 
        NSString *anImageName = [NSString stringWithFormat:@"%d.png", anIndex++]; 
        NSString *anImagePath = [NSString stringWithFormat:@"%@/%@", aDocumentsDirectory, anImageName]; 
    
        NSData *anImageData = UIImagePNGRepresentation(anImage); 
        [anImageData writeToFile:anImagePath atomically:YES]; 
    } 
    

2 .. При извлечении Исходное изображение, сохранить изображение в файл прямо там.

NSString *aDocumentsDirectory = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject]; 
    NSInteger anIndex = 0; 

    for(NSDictionary *dict in info) { 
     UIImage *image = [dict objectForKey:UIImagePickerControllerOriginalImage]; 
     [images addObject:image]; 

     UIImageView *imageview = [[UIImageView alloc] initWithImage:image]; 
     [imageview setContentMode:UIViewContentModeScaleAspectFit]; 
     imageview.frame = workingFrame; 

     [_scrollView addSubview:imageview]; 
     [imageview release]; 

     workingFrame.origin.x = workingFrame.origin.x + workingFrame.size.width; 

     // Save Image 
     NSString *anImageName = [NSString stringWithFormat:@"%d.png", anIndex++]; 
     NSString *anImagePath = [NSString stringWithFormat:@"%@/%@", aDocumentsDirectory, anImageName]; 

     NSData *anImageData = UIImagePNGRepresentation(image); 
     [anImageData writeToFile:anImagePath atomically:YES]; 
} 
+0

Ты сделал мой день! Огромное спасибо!!! – GenieWanted