私にとっては、これは非常にコードの一口です。私は各コード部分の部分を理解していますが、どのように一緒にハングアップし、全体として動作するのかについての論理的な流れは記述できません。completionHandler:
メソッドの後の '^'文字の解釈から始めます。Objective-Cコードの^文字の意味は何ですか?
このコードをあまり圧縮されていない形式で書き直すと、あまり効率的ではありませんが、視覚的に理解しやすくなります。私はこのコードをダウンロードしたので、プログラムの文脈では、それはコードを実行していると述べることができます。
ありがとうございました。
[[self stillImageOutput] captureStillImageAsynchronouslyFromConnection:videoConnection
completionHandler:^(CMSampleBufferRef imageSampleBuffer, NSError *error) {
CFDictionaryRef exifAttachments = CMGetAttachment(imageSampleBuffer,
kCGImagePropertyExifDictionary, NULL);
if (exifAttachments) {
NSLog(@"attachements: %@", exifAttachments);
}
else {
NSLog(@"no attachments");
}
NSData *imageData = [AVCaptureStillImageOutput
jpegStillImageNSDataRepresentation:imageSampleBuffer];
UIImage *image = [[UIImage alloc] initWithData:imageData];
[self setStillImage:image];
[image release];
[[NSNotificationCenter defaultCenter]
postNotificationName:kImageCapturedSuccessfully object:nil];
}];
これはブロックの開始を知らせます。 –
@ sudo、回答を投稿... –