iphone - 从不兼容类型 'AppDelegate *' 分配给 'id<UIApplicationDelegate>'

标签 iphone ios objective-c

在我的项目中它说Assigning to 'AppDelegate *' from incompatible type 'id'

这到底是什么?为什么会出现此警告?

我已经在 .m 中声明了

AppDelegate *appdev;

并在 viewDidLoad 中

{
    appdev = [[UIApplication sharedApplication]delegate];     <= warning here
}

我想隐藏这个警告。我应该怎么办?提前致谢。

最佳答案

因为你知道它们相等,所以添加一个强制转换让编译器知道

 AppDelegate* app = (AppDelegate*)[[UIApplication sharedApplication]delegate];

因为这也可能出现在 Swift 中

 let app = UIApplication.shared.delegate as! AppDelegate

关于iphone - 从不兼容类型 'AppDelegate *' 分配给 'id<UIApplicationDelegate>',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17563127/

相关文章:

iphone - 如何禁用 UISegmentedControl?

iphone - 将文件从 iphone 应用程序发送到本地服务器?

ios - 我想使用我的 iOS 应用程序在 Facebook 墙上发布带有自定义文本的视频

ios - NSLocaleCountryCode 返回 nil

ios - 如何在 Swift 中设置类(class)结构?

ios - 通过 topviewcontroller 在自定义类上设置委托(delegate)的简洁方法

iPhone,在变暗 View 中捕获所有触摸事件

iphone - 获取示例视频 .MOV 文件

ios - 将 Objective-C 转换为 Swift 时如何处理 Protocol Delegate

iphone - SearchBar TintColor 未应用正确