我最近开始学习iOS开发,并喜欢使用Xcode的界面构建器。这很容易添加赛格和插座和“事件处理程序”thingys(抱歉,我不知道他们叫什么)。当我在Xcode的界面生成器中做些什么时,幕后会发生什么?
不过,我弄糊涂了,当我添加标签或某事的出口,并认为这获取代码
@IBOutlet var weak myLabel: UILabel!
加入我看不到任何分配给变量!而当我使用这个变量时,它不是nil
!当我在用C#做Windows窗体时,每当我在界面设计器中添加一些东西时,就会在一个单独的文件中生成一些代码来实际“添加”这个东西。
我知道故事板文件只是xml文件。每当我对它做些什么,xml都会改变。但我不相信xml可以做反射来为我的变量赋值,可以吗?
因此,我推断必须有一些代码在幕后生成,这些代码反映了我的代码并为outlet变量赋值。我在哪里可以找到这个文件?究竟添加了什么?或者我的猜测是错误的?
可以作为源代码打开相同的XIB或故事板文件。在左侧的File View中右键单击它并选择Open As> Source Code。 – hannad
在Storyboard中点击你的标签和实用程序(xcode中的右侧面板) - >属性检查器,你可以看到标签的所有默认设置。您可以在此处或通过myLabel插座在代码中进行更改。 –
@F_Boris我知道这一点。我不知道的是变量如何分配,我看不到任何分配。 – Sweeper