我使用generateCGImagesAsynchronouslyForTimes做出一些圖像,並將它們保存到NSMutableArray
,現在當函數generateCGImagesAsynchronouslyForTimes
結束我希望這個陣列中使用的圖像,我怎麼能有代碼我想exectue畢竟所有的圖像已經生成完成。我只是把它放在completionHandler
的代碼塊中,但我不希望它運行多次,我只是想在這個方法結束後運行一次。等待Xcode的方法來完成
編輯
這是所有裏面- (BFTask *)createImage:(NSInteger)someParameter {
AVAssetImageGenerator *imageGenerator = [AVAssetImageGenerator assetImageGeneratorWithAsset:passsedAsset];
[imageGenerator generateCGImagesAsynchronouslyForTimes:times
completionHandler:^(CMTime requestedTime, CGImageRef image, CMTime actualTime,
AVAssetImageGeneratorResult result, NSError *error) {
if (result == AVAssetImageGeneratorSucceeded) {
UIImage *img = [UIImage imageWithCGImage:image];
NSData *imgData = UIImageJPEGRepresentation(img, 1.0);
UIImage *saveImage = [[UIImage alloc] initWithData:imgData];
[mutaleArray addObject:saveImage];
//I get Assigment to read only property error on line below
completionSource.task = saveImage;
}
]};
什麼,我應該將其賦值給?
感謝發佈,我沒有投票順便說一句,但你會詳細說明如何使用螺栓 – iqueqiorio
檢查GitHub鏈接。我在我的手機atm,所以不能做得很好。閱讀我的部分被稱爲「並行任務」。它將向您展示如何創建一個任務數組,然後在整個數組完成處理後擁有一個完成處理程序。 – Fogmeister
下來的選民請留下評論,解釋爲什麼我的答案是不正確的?還是他們只是懦弱? – Fogmeister