[英]Objective-C Delegate Type
在Objective-C中創建委托時,假定委托為: id <DelegateName> delegate
, delegate
的類型應該是什么? 那么在LLDB中運行po delegete
或po self.delegate
,預期結果是什么?
如果期望它是DelegateName
,那么您將不會手動更改它嗎?
編輯:
@protocol NavigationBarDelegate @可選-(void)titleViewClicked:(BOOL)titleClicked; @結束
LLDB中的po
輸出:
(lldb) po self.delegate
(objc_object *) $1 = 0x073d0840 <UINavigationController: 0x73d0840>
結果,委托被發送到UINavigationController
而不是預期的類。
類型是id
因此它可以是任何 Objective-C對象。 <DelegateName>
表示該對象將符合DelegateName
協議,但這不會影響其類型。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.