2013-03-19 4 views
1

Я пытаюсь программно добавить NSView над NSSplitView (для его обложки). Каждая попытка сделать это привела к тому, что она добавляется в NSSplitview в качестве дополнительного подзапроса. Может ли кто-нибудь помочь?nssplitview программно добавить nsview сверху

коды:

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

Разрешить представление NSSlipt - это A, ваш взгляд - B, так что вы получаете другое представление как C? –

+0

Я всегда получаю Splitview с дополнительным подзапросом. Первоначально у него было 3 горизонта. subviews, и он получает четвертую подзону (вид B). – jread1297

+0

показать полный код –

ответ

0

Я считаю, что вам нужно, чтобы добавить новый вид, как ребенок к SuperView (т.е. родителя.) В NSSplitView в. Таким образом, он становится родным и близким к NSSplitView и может покрыть его. Ваш текущий метод делает новый вид дочерним элементом представления split, который затем устанавливает себя как разделение четырех способов.

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

parentView выше вы должны получить «просмотр содержимого», то есть по умолчанию NSView внутренняя часть NSWindow, который IB поместил NSSplitView внутрь. Если parentView == nil, вы можете попробовать вручную добавить NSView в окно сначала, а затем поместить в него NSSplitView.

На боковой ноте вопрос ответил на мой собственный вопрос - как программно добавить к ракурсам, разделенным внутри NSSplitView! Спасибо :)

+0

Да, вы правы - это работает. Благодарю. – jread1297