2017-03-16 13 views
0

NSArrayを使用してビデオに変換するサンプルコードが見つかりました。問題は、一連の写真をNSMutableArrayに保存する独自のコードがあることです。私はそれをNSArrayに変換しようとしましたが、私はロードブロックを打っています。私が試したすべてのメソッドは、インスタンスエラーに送られたNSConcreteMutableData CGImageセレクタを認識できませんでした。 HERENSMutableArrayからNSArrayへのエラー

はERRORに

を投げているMY CODE各写真は、私がイメージ

[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"); 
                } 
               }]; 

YETこのフォーマットは、私は私のアプリバンドルからの画像でそれを試してみました PERFECT WORKS。

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オブジェクトをarrSlidshowImgに追加する前にUIImageオブジェクトに変換する必要があると思う。

また、NSMutableArrayは実際にはNSArrayなので、配列でそのコピーを行う必要はありません。

関連する問題