Подклассный NSArrayController привязывается к пользовательскому свойству - PullRequest
0 голосов
/ 25 января 2019

Я использую XCode 10, Objective-C, Mac OSX, а не iOS.

Я вложил в класс NSArrayController, чтобы создать новое свойство для привязки.

SHArrayController.h

@property (nonatomic) BOOL hasItems;

SHArrayController.m

- (BOOL)hasItems
{
    return ([self.arrangedObjects count] > 0);
}

Если я связываю что-либо с этим свойством, я не получаю уведомления об изменениях. Если я добавлю объект в arrayController, «hasItems» должен измениться.

Вот как я могу добавить объекты:

[self.arrayController willChangeValueForKey:@"hasItems"];
[self.arrayController addObject:SomeObject];
[self.arrayController didChangeValueForKey:@"hasItems"];

Что я делаю не так?

Edit: ArrayController правильно создан, так что объекты для добавления.

1 Ответ

0 голосов
/ 26 января 2019

Это была моя вина.Значение действительно изменилось, и уведомление работает.Я только что сделал ошибку.Вышеуказанная реализация верна.

...