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

前端之家收集整理的这篇文章主要介绍了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相关文章