我最近開始學習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