不兼容类型的参数(奇怪的问题)

时间:2011-03-21 17:54:27

标签: objective-c protocols

我最近下载了Xcode 4,我收到了之前没有的新警告。 以下代码(在FTSocialNetworkingController类中):

jsonConnection = [[FTJsonConnection alloc] initWithUrl:[NSURL URLWithString:urlString] 
                                                  delegate:self];

发出此警告:

FTSocialNetworkingController.m: warning: Semantic Issue: Sending 'FTSocialNetworkingController *' to parameter of incompatible type 'id<FTImageDownloaderDelegate>'

我知道问题意味着什么:自我应该符合FTImageDownloaderDelegate协议。 奇怪的是,initWithUrl:delegate:方法中的delegate参数是id <FTJsonConnectionDelegate>类型,并且在FTJsonConnection类(.h)中声明了这个方法

- (id)initWithUrl:(NSURL *)anUrl delegate:(id <FTJsonConnectionDelegate>)delegate;

我不知道它为什么要求FTImageDownloaderDelegate,因为我甚至没有在FTSocialNetworkingController类中使用它。

我今天遇到了问题,我不知道它来自哪里。 我使用initWithUrl:delegate:方法的其他类没有问题。

所以,如果有人知道这是什么......

1 个答案:

答案 0 :(得分:0)

试试这个:

jsonConnection = [[FTJsonConnection alloc] initWithUrl:[NSURL URLWithString:urlString] 
                                              delegate:(id)self];