2016-10-04 49 views
0

在連接檢查器中,連接插座參考連接如何消失,但當您右鍵單擊該連接並且該黑色插座窗口打開時仍然存在?XCode:IBOutlet連接如何消失並仍然存在?

我有一個問題Swift 3: Image does not show when setting isHidden=false,其中當isHidden設置爲false時,背景UIImageView從未出現過。我發現連接檢查器中沒有出現連接插座,但是當我在「視圖控制器場景」 - >「視圖控制器」 - >「視圖」下右鍵單擊「背景」一詞時,打開一個黑色插座窗口並且連接在那裏!所以我在那個黑色窗口中刪除了這個連接,並且把ViewController和控件從後臺UIImageView中拖拽到了ViewController中。

但是這怎麼能發生呢?

+0

因爲蘋果的工具非常煩躁。他們曾經是完全獨立的,現在只有輕微的聯繫。你可以很容易地刪除一行代碼,xib/storyboard仍然會有連接,你不會注意到它太遲了。歡迎來到「你一定會喜歡我們的開發工具」的世界! –

回答

1

但是,這怎麼能發生在第一位呢?

查看故事板文件中的實際XML。對象通常有一個<connections>部分看起來像這樣的:

<connections> 
    <outlet property="nameLabel" destination="ABG-fa-Haa" id="dEC-Ro-Sac"/> 
    <action selector="buttonAction:" destination="esT-2Y-Pvc" eventType="touchUpInside" id="aCT-ob-Q4d"/> 
</connections> 

這些都是你在故事板編輯器創建的連接。編輯器使用它從源代碼中收集的信息來確定它應該讓你創建哪些連接,但是一旦創建它們,故事板和定義插座和動作的源代碼之間就沒有真正的聯繫。如果您隨後更改或刪除這些定義,連接仍將在故事板中指定,直到您將其刪除。

相關問題