ios – 属性类型’id’与从’UIToolbar’警告继承的类型’id’不兼容

我刚刚安装了 xcode 5,现在我收到了这个警告.我以前从未见过它.我的应用运行良好,但我讨厌看到一个警告.有谁知道这是什么以及如何解决它?
谢谢

属性类型“id”与从“UIToolbar”继承的类型“id”不兼容

解决方法

从缺乏背景知识很难说,但这似乎是 Syntax for resolving incompatible property type on inherited delegate的重复

问题可能是您正在创建一个具有相同名称但附加了不同协议的新属性.

例如,UIToolBar具有以下属性:

@property(nonatomic,assign) id<UIToolbarDelegate> delegate;

如果您要在类中声明以下内容,则会生成此警告,因为这两个属性具有不同的协议:

@property(nonatomic,assign) id<MyBetterDelegate> delegate;

有两种方法可以解决这个问题.您可以修改协议以继承其他协议:

@protocol MyBetterDelegate<UIToolbarDelegate>
...

或者您可以修改属性定义以捕获两个协议:

@property(nonatomic,assign) id<MyBetterDelegate,UIToolbarDelegate> delegate;

相关文章

当我们远离最新的 iOS 16 更新版本时,我们听到了困扰 Apple...
欧版/美版 特别说一下,美版选错了 可能会永久丧失4G,不过只...
一般在接外包的时候, 通常第三方需要安装你的app进行测...
前言为了让更多的人永远记住12月13日,各大厂都在这一天将应...