当我使用绑定时,我不需要包含IBOutlet宏。 实施例
@property NSString * stringToBind
为什么会这样?
我们何时使用IBOutlet宏,何时将其遗漏?我很困惑,因为我认为我们将IBOutlet宏包含在我们想要用作界面构建器的对象时。
如果链接到某个对象会发生什么情况(就像通常用插座那样)会排除IBOutlet宏?换句话说,创建了没有IBOutlet宏的插座?它在所有情况下都是可选的吗?它只是用来使事情变得更容易,以便检测它们吗?
提前致谢
答案 0 :(得分:1)
就编译器和链接而言,IBOutlet是一个无操作。更具体地说,#define'd to nothing。 Xcode和Interface Builder使用静态代码分析来确定要做什么,但它对编译或链接没有影响。
生成的NIB包含加载时要连接的属性的名称,这些名称的解析方式与解析所有其他属性的方式相同。
如果从属性声明中删除IBOutlet会引入下次生成NIB的风险,则不会建立链接连接。我不确定Interface Builder如何处理它。