我正在尝试在使用 ARC 时应用 Unsynchronized 的答案(使用 AVAssetReader 绘制波形)。只需要进行少量修改,主要是发布声明。非常感谢您的精彩回答!我正在使用针对 iOS5 设备的 Xcode 4.2。
但是我在试图调用整个事情时被困在最后的一个陈述上。
此处显示的方法:
-(void) importMediaItem {
MPMediaItem* item = [self mediaItem];
waveFormImage = [[UIImage alloc ] initWithMPMediaItem:item completionBlock:^(UIImage* delayedImagePreparation){
[self displayWaveFormImage];
}];
if (waveFormImage) {
[self displayWaveFormImage];
}
}
在调用 initWithMPMediaItem 时出现以下错误:
Automatic Reference Counting Issue. Receiver type 'UIImage' for instance message
does not declare a method with selector 'initWithMPMediaItem:completionBlock:'
由于我确实在类头中声明了 initWithMPMediaItem 方法,因此我真的不明白为什么会出现此错误。
- (id) initWithMPMediaItem:(MPMediaItem*)item
completionBlock:(void (^)(UIImage* delayedImagePreparation))completionBlock;
几个小时以来一直试图围绕这个问题进行思考,但无济于事。对于这种类型的方法,我的方法声明是否错误?谢谢!