如果我在ChildView.xib中创建自定义UIView -如何从MainWindow.xib引用它?
我尝试将一个UIView拖到MainWindow.xib中,并将其与同一个ChildView类关联起来。我从MainWindow.xib中创建了ChildView.xib的所有者的ViewController,在ChildView.xib中,我将childView IBOutlet连接到视图,但当我启动应用程序时,ChildView.xib中的视图不会自动加载。
这个是可能的吗?在基本层面上,我想我是在问如何将独立XIB文件中的UIViews连接到其他XIB中的IBOutlet引用……比如MainWindow.xib。
顺便说一句,我知道如何在代码中做到这一点(用NSBundle手动实例化),但在这种情况下,我想知道如何完全在IB (界面生成器)中做到这一点。
发布于 2011-03-23 04:14:41
我对此进行了一些试验,并使用关联的XIB文件创建了一个NSViewController子类。我可以通过将NSViewController对象的一个实例放在主XIB文件中,并使用属性检查器将"Nib name“设置为NSViewController子类的XIB文件的名称,从而自动加载该文件。默认情况下,该XIB文件还包含一个视图对象,您可以在IB中对其进行自定义,也可以将其设置为自定义视图子类类型。
但是,将视图控制器的视图添加到主窗口的内容视图仍然需要一行代码。(我在代理中完成了此操作)
- (void)applicationDidFinishLaunching:(NSNotification *)aNotification
{
[[self.window contentView] addSubview:myVC.view];
}进一步的实验表明,没有必要拥有一个自定义的XIB子类,但是您仍然需要加载属于NSViewController的NSViewController文件。
我看不到任何方法可以将主XIB中的插座链接到加载的XIB中的视图对象。我只能链接到视图控制器对象,然后通过它的view属性访问自定义视图。
https://stackoverflow.com/questions/5395454
复制相似问题