2010-10-10 4 views
0

У меня есть этот код, чтобы загрузить NSView из СИБ и добавить его к другому NSView:Загрузка NSView из СИБ не будет работать

// INIT 
- (void)awakeFromNib { 
    // Load nib 
    DNListViewController *listViewController = [[DNListViewController alloc] initWithNibName:@"ListView" bundle:nil]; 

    // Add view to window 
    [listViewController.view setFrame:detailView.frame]; 
    [detailView addSubview:listViewController.view]; 

    // MEM 
    [listViewController release]; 
} 

Все выходы подключены правильно, но ничего не отображается. Я не понимаю, почему! Кто-нибудь может мне помочь? Благодарю.


Речь идет о NSViews, а не UIViews!

ответ

2

О, я уже исправил его. Nevermind, я позволю остаться здесь для людей из будущего.

[listViewController.view setFrame:detailView.frame]; 

должен быть

[listViewController.view setFrame:detailView.bounds]; 
+1

В частности, границы в целях находятся в своем собственном координатном пространстве, в то время как его рама находится в координатном пространстве родительского вида. Таким образом, вам нужно определить кадр представления списка в пространстве координат детального представления (путем получения границ подробного представления), а не в пространстве координат родительского представления подробного представления (кадр детального представления). –