我收到以下警告:“从 NSURL 分配 NSString 的指针类型不兼容”。
这是有问题的代码:
cell.articleURL.text = [self.articles[row] URL];
我正在为一个标签分配 Article 对象的 URL 属性的值。 self.articles 数组仅用于保存 Article 对象。
在 Article 类中我有这个:
@property (nonatomic, strong) NSString *URL;
为什么它认为它是一个 NSURL?
最佳答案
问题是 self.articles[row]
将返回类型为 id
的对象,这意味着 Objective-C 运行时无法确定是哪个方法实现适用。它在另一个接口(interface)中找到一个 URL
方法并使用那个方法。
文章 A big weakness in Objective-C's weak typing 中有关于此问题的更多信息作者:马特·加拉格尔。
关于ios - 为什么 Xcode 认为我的变量在应该返回 NSString 时返回了 NSURL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15506767/