链接到Quartz框架还是ARC错误?

use*_*073 3 objective-c dynamic-linking automatic-ref-counting

我有以下代码为NSView背景生成"噪声纹理".

我已经链接的目标CocoaQuartzCore框架,在构建阶段,但是编译器保持与以下错误抱怨:

ARC语义问题

"接收'CIFilter'用于课堂消息是一个前瞻性声明"

"选择器filterWithName的未知类方法"

CIFilter *randomGenerator = [CIFilter filterWithName:@"CIColorMonochrome"];

[randomGenerator setValue:[[CIFilter filterWithName:@"CIRandomGenerator"]           valueForKey:@"outputImage"]
                   forKey:@"inputImage"];

[randomGenerator setDefaults];
noisePattern = [randomGenerator valueForKey:@"outputImage"];
Run Code Online (Sandbox Code Playgroud)

这有什么不对?我已经尝试了所有可以想象的技巧,以摆脱错误.我肯定知道这段代码是有效的,因为它是一个没有任何问题编译的示例项目的副本.任何帮助表示赞赏.

Vla*_*mir 7

但是,您将项目与QuartzCore框架链接起来仍然需要在实现文件中导入适当的标头:

#import <QuartzCore/QuartzCore.h>
Run Code Online (Sandbox Code Playgroud)