Соблюдайте опубликованные значения Quartz Composition без использования QCView и QCPatchController.

Я искал несколько способов управления 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 или этот код не должен работать вообще:)
Так есть ли способы наблюдать опубликованные значения моей композиции?
Спасибо за помощь.

0 ответов

Другие вопросы по тегам