2011-12-23 52 views
3

如果我有两个含几个视图的笔尖,有没有办法让我在它们之间使用addSubview:方法?我想要做的是从其中一个nib中获取视图,并告诉它添加一个子视图,该子视图将成为另一个nib文件中的视图。Cocoa:将子视图添加到不同类和笔尖的视图

我把它们放在单独的笔尖中的原因是因为第二个笔尖的子视图将被添加几次,使用相同的模板但不同的参数。

回答

1

是的,你可以在一个笔尖中添加一个视图作为子视图到另一个笔尖中的视图。

您需要创建一个将拥有子笔尖的NSViewController对象。因此,只要初始化视图控制器,与它关联的笔尖就会被加载。现在,您可以使用控制器的视图属性,并将其作为子视图添加到任何其他视图。下面

的代码将帮助您更好地了解:

YourViewController.m

-(id)init 
{  
    self = [super init]; 

    if(nil != self) 
    { 
     [NSBundle loadNibNamed:@"myNibName" owner:self]; 
    } 

    return self; 
} 

YourOtherClass.m

-(void)addYourViewControllerViewAsSubview 
{ 

    YourViewController *yvc = [[YourViewController alloc] init]; 

    [yourOtherViewOutlet addSubview:yvc.view]; 

} 
+0

辉煌,谢谢! – Elbimio 2011-12-23 17:57:08

相关问题