问:众所周知,在编译时
1.所有IBOutlet关键字都被完全删除。
2.所有IBAction关键字均被void取代,因为预期用户界面控件调用的操作不具有返回值。
然后出现一个问题,“使用IBOutlet和IBAction方法的目的是什么”
答:我们可以使用以下几行使click上的mouseenter和mouseleave保持无效:
$('。imgContainer')。click(function(){
$(this).off('mouseenter')。off('mouseleave');
});
这将帮助您解决问题。希望这会帮助你。谢谢
答:IBOutlet引用UI对象,而IBAction引用UI对象操作。IBAction和IBOutlet是引用到接口生成器的宏。
IBAction解析为void,IBOutlet解析为空,但可以在“界面”构建器中使用它们将UI元素链接到您的代码。
答:IBOutlet和IBActions不会以编程方式执行任何操作。定义了“ hookups”来连接Interface Builder中的“视图”和“动作”。
我们在声明属性时添加关键字IBOutlet。与声明其他属性相同,但是在这种情况下,我们可以从Interface Builder中“挂钩”此插座。
示例如下:
IB插座
如果我们将UILabel放在情节提要/ XIB中的UIView上,则需要通过代码更改其值。我们需要将其“挂钩”以进行编码。为此,我们需要在声明属性时指定IBOutlet关键字。
IB动作
同样,假设我们在情节提要/ XIB中有一个UIButton,我们需要对其触发操作。我们需要将其与代码中的函数连接。此函数的返回类型应为“ IBAction”。该接口然后知道它可以与此功能连接。如果我们将“ void”作为返回类型传递,则它将不会显示在Interface Builder中。
运行时会发生什么
在运行期间,将删除“ IBOutlet”,并将“ IBAction”替换为“ void”。