nssplitview以编程方式在顶部添加nsview

时间:2013-03-19 11:38:36

标签: cocoa nsview nssplitview

我正在尝试以编程方式在NSSplitView上添加NSView(以覆盖它)。每次尝试这样做都会导致它作为额外的子视图添加到NSSplitview中。 有人可以帮忙吗?

代码:

InfoTrainView *myView = [[[InfoTrainView alloc] initWithFrame: aFrame] autorelease];
[NSBundle loadNibNamed:@"InfoTrainView" owner:myView]; 
[self.windowController.splitViewBase addSubview:myView];

1 个答案:

答案 0 :(得分:0)

我相信您需要将您的新视图作为子项添加到NSSplitView的 superview (即父级)。通过这种方式,它成为NSSplitView 的兄弟,可以覆盖它。您当前的方法使新视图成为拆分视图的子视图,然后将其自身设置为拆分四种方式。

NSView* parentView = [self.windowController.splitViewBase superview];
if (parentView)
    [parentView addSubview:myView];
上面的

parentView应该会获得“内容视图”,它是NSWindow中的默认NSView,IB将NSSplitView置于其中。如果parentView == nil,您可以先尝试手动将NSView添加到窗口,然后将NSSplitView放入其中。

在旁注中,您的问题回答了我自己的问题 - 如何以编程方式添加到NSSplitView内部拆分的视图!谢谢:))