0
NSCollectionView
有一個代表,應符合NSCollectionViewDelegate
。如何更改或擴展NSCollectionView的委託?
- (id <NSCollectionViewDelegate>)delegate
我有一個新的協議,它擴展了NSCollectionViewDelegate
。現在
@protocol extendedProtocol <NSCollectionViewDelegate>
,在我CollectionViewItem的控制器類,我打電話委託的方法是這樣的:
if (
[self collectionView]
&& [[self collectionView] delegate] &&
[[[self collectionView] delegate] conformsToProtocol:@protocol(extendedProtocol)]
)
{
BOOL flag = [[[self collectionView] delegate] doSomeWork:@"abc"];
}
我不斷收到警告說:「實例方法‘doSomeWork:’未找到」。
我試着做
id <extendedProtocol> dg = [[self collectionView] delegate];
BOOL flag = [dg doSomeWork:@"abc"];
但後來我得到警告,「不兼容的指針類型初始化‘身份證’類型‘ID’的一種表現。
什麼是改變協議的正確方法NSCollectionView的委託