起初,我認爲nib只生成了子視圖(擁有所有者的目標對象實例,即視圖控制器)。Nib文件中包含哪些對象?
從我的理解(或誤解)視圖控制器(所有者)現在實際上被包含在相同的筆尖文件時使用的出口。
這是否意味着視圖控制器和視圖都是'由'生成或由nib文件實例化?
感謝
起初,我認爲nib只生成了子視圖(擁有所有者的目標對象實例,即視圖控制器)。Nib文件中包含哪些對象?
從我的理解(或誤解)視圖控制器(所有者)現在實際上被包含在相同的筆尖文件時使用的出口。
這是否意味着視圖控制器和視圖都是'由'生成或由nib文件實例化?
感謝
筆尖由什麼,它的組成意味着無論你把那裏。不過,從您的問題中可以聽出,您似乎可能在問故事板是如何工作的,因爲它們使用了不直接與之互動的筆尖。
在故事板中,每個場景由兩個組成 nibs:一個包含視圖控制器,另一個包含視圖控制器的視圖(及其子視圖和其他所有內容)。
在xib文件表示視圖控制器的視圖,視圖控制器本身只是一個代理對象(文件的所有者);它不是從筆尖生成的,而是在筆尖加載時已經存在(這就是爲什麼它可以作爲文件的所有者)。這實際上也是故事板場景中的第二個nib文件的工作原理。
從我剛剛閱讀的內容來看,我認爲可能是這樣的情況,如果你有一個已經存在的對象,你想成爲未來的所有者對象,那麼當你創建一個出口連接時,那個已經存在的對象實例現在'神奇地'變成除了nib文件之外。因此,即使所有者實例不需要存在的筆尖,它仍然會成爲筆尖的一部分,並且當筆尖加載時,您現在有兩個單獨的實例,一個是原始所有者對象,但現在它擁有一個新的屬性,指它擁有的實例。正確? – user7024499
沒有魔法,它不會成爲nib文件的一部分。您是否閱讀過我的書中關於所有者和代理的章節?我在這裏用一個漂亮的圖表來解釋網點:http://www.apeth.com/iOSBook/ch07.html#_outlet_connections – matt
感謝馬特,這張圖與我看過的圖有點不同,我會對此進行一番審視。非常感激! – user7024499
請不要一再詢問同一個問題。如果您的第一個問題不明確,請對其進行編輯。 – matt
對不起,我以爲我刪除了另一個問題。 – user7024499