从不同的笔尖添加NSView

时间:2010-06-16 22:14:09

标签: cocoa nsview nsviewcontroller

如果新视图位于不同的xib文件中,如何添加子视图?

不同笔尖的类是NSViewController,我使用self = [super initWithNibName:@"NewView" bundle:nil];来加载笔尖

我可以这样做:

NewView *nv = [NewView new];
[oldView removeFromSuperView];
[mv addSubview:[nv theView]];

或者我必须做些不同的事情

1 个答案:

答案 0 :(得分:1)

是的,这是正确的,提供NewViewNSViewController的子类。话虽如此,您不应该将控制器类命名为NewView,因为它不是视图。您的NSViewController子类应该真正命名为NewViewController

你也可以这样做:

[[oldView superview] replaceSubview:oldView withView:nv];

当然,这假设您的NewView nib文件的文件所有者设置了NSViewController的子类。