gpt4 book ai didi

iphone - 使用 AVAssetReader 和 ARC 绘制波形

转载 作者:行者123 更新时间:2023-12-03 21:03:58 24 4
gpt4 key购买 nike

我正在尝试在使用 ARC 时应用 Unsynchronized 的答案 ( Drawing waveform with 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:'

由于我确实在类 header 中声明了 initWithMPMediaItem 方法,所以我真的不明白为什么会收到此错误。

- (id) initWithMPMediaItem:(MPMediaItem*)item
completionBlock:(void (^)(UIImage* delayedImagePreparation))completionBlock;

几个小时以来我一直试图解决这个问题,但没有成功。对于这种类型的方法,我的方法声明是否错误?谢谢!

最佳答案

看起来 initWithMPMediaItem 应该被声明为 UIImage 的初始值设定项。因此,您应该在头文件的 UIImage 类别中声明它:

@interface UIImage (MPMedia)

- (id) initWithMPMediaItem:(MPMediaItem*)item
completionBlock:(void (^)(UIImage* delayedImagePreparation))completionBlock;

@end

关于iphone - 使用 AVAssetReader 和 ARC 绘制波形,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9509020/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com