1

我一直在寻找一些方法来控制 Quartz Composition,它被加载为从 NSView 继承的自定义视图的子层。

NSString * compositionPath = [[NSBundle mainBundle] pathForResource:@"Test" ofType:@"qtz"];
QCCompositionLayer *myQCCompositionLayer = [[QCCompositionLayer compositionLayerWithFile:compositionPath] retain];
// Borderless window with custom view
[[self.contentView layer] addSublayer: myQCCompositionLayer];

我手动发现,以下代码可用于设置发布的输入值:

[myQCCompositionLayer setValue:@"123" forInputKey:@"published_text_input"];

所以我试图找到观看发布的输出值的方法,我想知道观察者是否应该这样做。写了这样的东西:

[myQCCompositionLayer addObserver:self forKeyPath:@"published_output_value" options:0 context:nil];

这在同一个班级:

- (void) observeValueForKeyPath:(NSString*)keyPath ofObject:(id)object
                     change:(NSDictionary*)change context:(void*)context
{
    NSLog(@"123");
}

但它不起作用。也许 keypath 不正确或者这段代码根本不应该工作:)
那么有什么方法可以观察我的作品的发布值吗?
感谢帮助。

4

0 回答 0