2017-03-16 68 views
0

我找到了一个采样NSArray并将其转换为视频的示例代码。问题是我有我自己的代码,需要一系列照片并将它们保存到NSMutableArray。我试图将其转换为NSArray,但我正在打路障。我试过的每个方法都是给我一个NSConcreteMutableData CGImage无法识别的选择器发送到实例错误。NSMutableArray到NSArray错误

这里是我的代码不抛出

后每张照片拍摄我把这个代码存储图像

[self.arrSlidshowImg addObject:UIImageJPEGRepresentation(flippedImage, 1.0)]; 

然后,当最后一张照片的拍摄,我只是把这个代码中的错误,但它会抛出一个错误。

NSArray *myArray = [self.arrslideshow copy]; 
    [AHIImagesToVideo saveVideoToPhotosWithImages:myArray 
          animateTransitions:YES 
          withCallbackBlock:^(BOOL success) { 
           if (success) { 
           NSLog(@"Successs"); 
                } 
           else { 
            NSLog(@"Failed"); 
                } 
               }]; 

然而,这种格式可以完美运行 我从我的应用程序包的图像尝试过。

NSArray * testImageArray = @[ [UIImage imageNamed:@"photo1.png"], 
           [UIImage imageNamed:@"photo2.png"]]; 
    [AHIImagesToVideo saveVideoToPhotosWithImages:testImageArray 
          animateTransitions:YES 
          withCallbackBlock:^(BOOL success) { 
           if (success) { 
           NSLog(@"Successs"); 
                } 
           else { 
            NSLog(@"Failed"); 
                } 
               }]; 

回答

0

您对UIImageJPEGRepresentation的调用返回一个NSData对象。在你工作的例子中,你将UIImage对象放入数组中。我怀疑你只需要将你的NSData对象转换成UIImage对象,然后将它们添加到arrSlidshowImg。

此外,你可能不需要在数组上做那个拷贝,因为NSMutableArray实际上是一个NSArray。