ios - 我如何摆脱 iOS 7 Objective-C 中的这个警告?

标签 ios objective-c nsurlsession

我有以下 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 并且委托(delegate)位于另一个 ViewController 中,如您在上面看到的。

最佳答案

(来自评论,为后人作答。)

HomeViewController 不是您添加了协议(protocol)一致性的类 (ProfileTabView)。

关于ios - 我如何摆脱 iOS 7 Objective-C 中的这个警告?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24468731/

相关文章:

ios - 如何在 UITests 目标中使用 accessibilityIdentifier 查找 UIView

ios - 如何存储列表并从 iOS 的设置页面中清除它?

objective-c - NSMutableArray addObject 不起作用

cocoa-touch - NSURLSession 取消任务

IOS/objective-C : Save Custom Array as NSUserDefault

ios - Swift URL查询字符串获取参数

iphone - 如何以编程方式拍摄 iPhone 主屏幕的快照?

c++ - 使用 Objective-C 获取 Photoshop 的 Action 列表

ios7 - 当应用程序在 iOS 7 后台运行时将数据发送到服务器

ios - NSURLSession 未到达服务器