У меня есть приложение MVC. Модель имеет свойство, которое является структурой NSSize. Он доступен для записи следующим образом:
- (void)setSize:(NSSize)aSize;
Представление устанавливает этот NSSize с использованием кодирования ключа. Однако вы не можете использовать код-ключ для структуры, поэтому я обернул его в NSValue -объект следующим образом:
[theView setValue:[NSValue valueWithSize:mySize]
forKey:@"theModel.size"];
Насколько я понимаю, это не должно работать, поскольку аксессуар ожидает структуру, а не NSValue. Но он работает отлично. Волшебно.
Как это возможно?