Как привязка указана для плагинов Interface Builder? - PullRequest
3 голосов
/ 26 ноября 2008

Я создаю плагин Interface Builder для подкласса NSView. Я следовал руководству по программированию подключаемого модуля Interface Builder , но оно не отвечает на все мои вопросы. У моего класса есть одно свойство NSString и 4 свойства NSColor, для которых я хочу создать привязки во время разработки.

Я не могу понять, где указаны привязки в проекте плагина. В документации говорится, что объект инспектора предназначен только для создания инспектора атрибутов. Файл описания класса (.classdescription) содержит список выходов и действий, но не привязок.

Где я могу указать привязки для моего класса?

1 Ответ

3 голосов
/ 26 ноября 2008

В инициализаторе класса выполните вызов + (void)exposeBinding:(NSString *)binding следующим образом:

+ (void)initialize
{
    [self exposeBinding:@"someProperty"];
}

Вы также можете указать класс значения следующим образом:

- (Class)valueClassForBinding:(NSString *)binding
{
    if ([binding isEqual:@"someProperty"])
    {
        return [NSNumber class];
    }
    else
    {
        return [super valueClassForBinding:binding];
    }
}

Взгляните на эту статью о CocoaDev и справку Apple NSKeyValueBindingCreation

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...