從我的理解中,代理類是始終從NSResponder
類繼承的類,而delegate
僅適用於繼承自NSResponder
的類。 NSMenu
直接從NSObject
繼承,那麼爲什麼我會在outlets
中看到deletgate
? 或者是我誤解了按住Ctrl鍵並單擊Interface Builder中的某個對象後所看到的選項?我看到Outlets
,Referencing outlets
,Received Actions
,這些是什麼意思呢? 我正在使用Xcode 4(10.7.3),如果這很重要。NSMenu中的代理成員
0
A
回答
0
我不知道你在哪看到這個,但它完全和完全不正確。委託只是一種模式,對可以實現委託的對象的類型沒有限制。
事實上,我們鼓勵您在您自己的類中使用委託模式。
NSMenu
聲明其delegate
屬性作爲標題中的出口,這就是爲什麼您在Interface Builder中看到它的原因。你可以做同樣在自己的代碼如下所示:
@interface YourObject : NSObject {}
@property (weak) IBOutlet id delegate;
@end
在Interface Builder中,Outlets
是指在類的頭中定義的網點,並可以連接到其他對象。 Referencing Outlets
和Referencing Actions
連接從其他物體到您的對象。
相關問題
- 1. 將NSDocument設置爲NSMenu的代理
- 2. 代理成員訪問
- 3. NSMenu中的替代菜單項
- 4. 迭代成員
- 5. 使用boost的集合中的成員函數代理
- 6. 成員函數的代表
- 7. Swift中的NSMenu選擇器
- 8. NSMenu中的文本列?
- 9. 迭代通過groovy中的類成員
- 10. 替代C中的成員變量
- 11. 數據成員訂單從wcf客戶端代理生成的類中丟失
- 12. 在Lync中爲用戶設置代理和團隊成員
- 13. NSMenu代表不會觸發menuWillOpen
- 14. 從成員struct的成員函數中訪問類的成員?
- 15. 更新NSMenu中的項目時的內存管理
- 16. 集成管理員和Sentry
- 17. 分組由管理員和員工表中的代表
- 18. ASP.NET成員/ SQLMembershipProvider源代碼
- 19. 迭代成員變量
- 20. 如何迭代類成員?
- 21. NSFileHandle readInBackgroundAndNotify和NSMenu
- 22. 透明NSMenu
- 23. 子類NSMenu
- 24. 開發人員Web代理
- 25. WIX:如何區分管理員組和內置管理員的成員
- 26. 管理員權限在代碼中?
- 27. ptree中迭代器的成員不是由自動完成identifed?
- 28. ASP.Net中的成員?
- 29. 成員中的EnablePasswordReset
- 30. 從Rails成員中過濾出管理員
現在回到蘋果文檔,我意識到我錯了,我沒有閱讀「經常」這個詞。 '的委託對象通常是響應對象,也就是說,一個對象 在 UIKit的 - 即響應於用戶事件從NSResponder類在AppKit框架或UIResponder繼承。代表是 對象,該對象被委派控制該事件的用戶界面,或者至少要求以特定於應用程序的方式解釋事件。 – PnotNP 2012-02-25 02:32:26