在我的以下link 中有一個類似的問題,但它不能完全回答我的查詢。Objective C代表和類方法vs實例方法
我正在爲Facebook設置助手類(遵循委託模式)。的類中的方法之一的例子將是:
+ (void)openSession:(id)delegate;
此方法調用一個Facebook的openActiveSessionWithReadPermissions
方法,該方法需要一個completionHandler塊。調用委託方法是否有意義,如sessionStateChanged
在塊中如下所示?
[delegate sessionStateChanged];
或者是它更好地使用實例方法爲Facebook輔助類,並呼籲在completionHandler塊使用[self.delegate sessionStateChanged]
委託。
我明白這是一個解決方案,但我是使用委託模式,而不是塊模式,我提到哪些更有意義? – pechar 2013-02-08 19:17:39
編輯答案以回答您關於如何調用委託的問題。 – 2013-02-08 20:41:56
@ Fruit-Geek爲什麼我的問題被低估?我知道'self'只在實例類中可用,這不是我的問題。我只需要知道是否最好使用類方法並將'(id)委託參數傳遞給它(委託傳遞遵循FacebookHelperDelegate協議)並像使用'[delegate sessionStateChanged]一樣使用它'或者使用它實例方法並使用參數'(id)委託'調用協議方法,如下所示: '[self.delegate = delegate];' [self.delegate sessionStateChanged]'Thanks – pechar 2013-02-09 15:41:36