不幸的是,在Apple文檔中文件所有者的解釋非常短暫。我知道這是一個代理對象。但是,關於「文件所有者」對象的真正含義是什麼?到底有什麼好處呢?什麼描述了Objective-C/cocoa Nib中最好的「文件所有者」?
回答
http://www.cocoadev.com/index.pl?FilesOwner
從本質上說,無論對象中加載的NibFile成爲文件的該筆尖文件所有者。
這是不正確的。請參閱http://crazyviraj.blogspot.com/2009/05/cocoa-what-is-files-owner-in-nib.html – psychotik 2009-10-11 20:13:10
我知道它是一個代理對象。
不是。這是一個真正的對象。筆尖中的圖標僅作爲代理,其意義在於所有其他圖標表示對象存檔在筆尖中的,而文件的所有者不是。但是FO不是您應用程序中的代理對象。
但是,關於「File's Owner」對象的真正含義是什麼?到底有什麼好處呢?
它是在nib中擁有對象的對象。
就是這樣。沒有比這更多的了。
如果您瞭解並理解筆尖加載過程,那麼理解文件所有者參考的含義會更容易。
Cocoa的框架,以您的名義自動處理多種筆尖負荷,用一個可可自身內置擔任管理,或「擁有」筆尖文件的實例化對象控制器類的類。當您手動加載自己的筆尖時,您可以選擇將哪個課程作爲文件的所有者。
當您閱讀有關筆尖加載過程時,請注意許多加載方法中的「owner:」參數。它正是這個對象,將作爲文件的所有者連接到您的筆尖文件中的對象
解釋它的最佳方式是如何設置它的一個示例。假設您有一個NSWindowController子類,它是一個偏好窗口的控制器。首選項窗口位於名爲「首選項」的NIB中。
在你的NSWindowController子類中,你將有以下init方法:
- (id)init {
if (self = [super initWithWindowNibName:@"Preferences"]) {
//do initalisation
}
return self;
}
這初始化窗口控制器,在應用程序的主束將其與筆尖關聯命名爲「首選項」。請注意,NIB尚未加載(當您首次調用窗口控制器上的窗口時會發生這種情況。)
在Preferences NIB中,您將點擊File's Owner圖標,然後進入Class Info面板Inspector在這裏你可以將類設置爲你的窗口控制器類的名字(例如PreferencesController),它現在代表了你的窗口控制器的一個實例,所以你可以連接出口和動作。
在IB中編輯時,它只是對象的代理,就像拖動到NIB的任何對象一樣,但是當加載NIB時,它將設置爲您創建的窗口控制器。
筆尖文件通常被稱爲「凍幹」並可隨時運行,它們是讓您的應用程序更加模塊化並減少內存使用量的好方法。當應用程序需要內部對象時,Nib文件可以解凍,或者隨時加載到內存中。
每當nib文件解凍時,它需要一個指向解凍它的對象的指針。這個對象通常是文件的所有者。文件的所有者允許nib文件內的對象訪問nib文件解凍前存在的對象。在某種程度上,文件的所有者充當新加載的對象和舊對象之間的橋樑。
- 1. 什麼描述@property(.....)最好?那真的有什麼好處?
- 2. 什麼描述了Objective-C/Cocoa中最好的「Outlet」?
- 3. 瞭解Unix文件描述
- 4. nib文件如何知道文件的所有者控制器
- 5. 爲什麼我的描述少了regex_error?
- 6. 什麼問題可能會導致nib文件的所有者設置爲零?
- 7. cleartool描述-ahlink - 所有文件名
- 8. 什麼描述最好的術語「內存足跡」?
- 9. 什麼是文件描述符?
- 10. 瞭解文件所有者
- 11. iPhone:(BOOL)isPad方法描述了什麼?
- 12. 文件描述符和文件指針有什麼區別?
- 13. 使用帶很少量文件描述符的epoll有什麼好處嗎?
- 14. 如何最好地描述TreeSort和HeapSort算法是什麼?
- 15. :: std :: nested_exception和朋友有什麼好的描述嗎?
- 16. 什麼是包描述符?
- 17. 爲什麼python描述符__get__方法接受所有者類作爲arg?
- 18. 最好的方式來描述在SQL
- 19. XIB和NIB文件有什麼區別?
- 20. 什麼是MainWindow.xib nib文件?
- 21. linux上的文件描述符3有什麼特別之處?
- 22. 描述和描述之間有什麼區別?
- 23. 什麼樣的XML文檔描述了這個DTD?
- 24. OpenGL庫的描述和所有功能都在做什麼
- 25. 返回epoll中的文件描述符的順序是什麼?
- 26. 鏈接描述文件有什麼問題
- 27. 哪個URL描述資源最好?
- 28. 在所有表中搜索列描述描述元
- 29. 什麼是「嵌入式硬件系統」的最佳描述?
- 30. 什麼形式的socket文件描述符在內存中?
這個問題也討論了這個:http://stackoverflow.com/questions/789251/is-there-an-easy-to-understand-guide-new-to-cocoa-xcode-etc-for-interface-bui – 2009-05-25 20:40:14
有關文件所有者的解釋:http://crazyviraj.blogspot.com/2009/05/cocoa-what-is-files-owner-in-nib.html – psychotik 2010-04-19 06:20:59