GCD を使用して UIImage を PNG ファイルとして保存しようとすると、問題が発生します。ここに私が書いているものがあります:
NSString *fileName = [[NSString stringWithFormat:@"%@.png",url] substringFromIndex:5];
dispatch_queue_t queue = dispatch_queue_create("screenshotQueue", NULL);
dispatch_async(queue, ^{
NSFileManager *fileManager = [NSFileManager defaultManager];
NSString *documentsDirectory = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
NSString *filePath = [documentsDirectory stringByAppendingPathComponent:fileName];
[fileManager createFileAtPath:filePath contents:UIImagePNGRepresentation(image) attributes:nil];
});
dispatch_release(queue);
初めて機能しますが、それ以外は何も作成していません。そして、作成した唯一のファイルが Finder で認識されないため、この %@.png は奇妙です。ファイルに .png 拡張子を追加する必要があり (したがって、filename.png.png)、それを開くことができます。