Sta*_*ley 4 cocoa objective-c nscoding nib
基于我所经历的文档和示例代码,我得到的印象是,当在Interface Builder中读取并配置在xcode中定义的类时,基于该类的对象被有效地创建并存储在xib或nib文件中.因此,在启动相应的应用程序时,可以使用该对象.
或者,对于尚未由Interface Builder处理的类,必须在xcode中显式编写诸如"new"语句之类的代码,以便创建和使用关联的对象.
拥有比我更了解的人来确认或纠正我对Interface Builder的非常天真的理解将是非常好的...
你的理解是正确的,但不完整.是的,Interface Builder实例化类并将它们序列化为NIB.但是,这些对象不会自动用于您的代码.
对于要通过Xcode访问的每个IB对象,需要声明一个IBOutlet变量.例:
IBOutlet NSWindow* mainWindow; // A Reference to your main window
Run Code Online (Sandbox Code Playgroud)
将此代码放在通过Interface Builder实例化的自定义对象的头文件中(将通用对象拖到类列表中,然后在检查器的"标识"选项卡中,将自定义对象设置为类的实例).然后,在Interface Builder中右键单击自定义对象.您应该会在弹出的窗口中看到IBOutlet的条目.从旁边的小圆圈拖动到(在此示例中)主窗口.您现在可以在Xcode中引用IB对象.
通过建立这些连接(使用IBOutlets作为参考,IBAction作为方法),您可以定义应用程序的大部分行为.
| 归档时间: |
|
| 查看次数: |
2756 次 |
| 最近记录: |