小编Ren*_*enc的帖子

绑定自定义NSView:它是否需要创建IBPlugin?

我创建了NSView的子类来将图像绘制为模式:

@interface CePatternView : NSView
{
    NSImage*    image;
    id      observableObjectForImage;
    NSString*   keyPathForImage;
}

@end
Run Code Online (Sandbox Code Playgroud)

我实现了以下内容来公开绑定:

+ (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
}
Run Code Online (Sandbox Code Playgroud)

不幸的是,图像绑定不会出现在Interface Builder中.

我是否真的必须创建一个IBPlugin来在Interface Builder中公开绑定?对于我不打算重用的自定义视图来说,这似乎有些过分.

cocoa interface-builder nsview ibplugin cocoa-bindings

14
推荐指数
2
解决办法
5551
查看次数