我为NSURLSession使用以下代码
NSURL * url = [NSURL URLWithString:urlString];
HomeViewController* hvc= [self.storyboard instantiateViewControllerWithIdentifier:@"HomeViewController"];
NSURLSessionConfiguration *defaultConfigObject = [NSURLSessionConfiguration defaultSessionConfiguration];
NSURLSession *defaultSession = [NSURLSession sessionWithConfiguration: defaultConfigObject delegate:hvc delegateQueue: [NSOperationQueue mainQueue]];
NSURLSessionDataTask * dataTask = [defaultSession dataTaskWithURL:url ];
[dataTask setAccessibilityLabel:@"UserProfiling"];
[dataTask resume];
编译器在以下语句中显示警告:
NSURLSession *defaultSession = [NSURLSession sessionWithConfiguration: defaultConfigObject delegate:hvc delegateQueue: [NSOperationQueue mainQueue]];
并且警告是:
Sending 'HomeViewController *' to parameter of incompatible type 'id<NSURLSessionDelegate>'
如何删除此警告?
我已通过书面确认与会代表:
@interface ProfileTabView : UIViewController <NSURLSessionDataDelegate, NSURLSessionDelegate, NSURLSessionTaskDelegate>
{
}
基本上,我正在调用NSURLSessionDataTask,并且委托在另一个ViewController中,如您在上面看到的。
最佳答案
(摘自评论,为后代作答。)
HomeViewController不是您已向(ProfileTabView)添加协议一致性的类。