Stworzyłem podklasę NSView narysować obraz jako wzorzec:Powiązanie niestandardowego NSView: Czy wymaga utworzenia IBPlugin?
@interface CePatternView : NSView
{
NSImage* image;
id observableObjectForImage;
NSString* keyPathForImage;
}
@end
I wdrożone następujące narażać powiązania:
+ (void)initialize
{
// Expose the "image" binding to IB.
[self exposeBinding:@"image"];
}
- (Class)valueClassForBinding:(NSString *)binding
{
if([binding isEqualToString:@"image"])
return [NSImage class];
return nil; // Unknown binding
}
Niestety obraz wiążące nie pojawiają się w konstruktorze interfejsów.
Czy naprawdę muszę utworzyć IBPlugin, aby odsłonić wiązania w programie Interface Builder? To wydaje się być przesadą dla niestandardowego widoku, którego nie planuję ponownie użyć.
Ktoś wie, jaki jest stan z Xcode 6 ..? – Jay
@Jay: W przypadku Wiązania, nie sądzę, aby to się zmieniło: Możesz tworzyć nowe właściwości do kontroli, ale nie będą one wyświetlane jako Wiązania AFAIK. Mogę się mylić, możesz chcieć zadać nowe pytanie specyficzne dla Xcode 6 i późniejszych. –