2013-07-17 73 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