我已使用Xcode 6 beta 6将XLForm(一个Objective C库)添加到我的Swift项目中。
编译器会在XLFormDescriptorCell.h
中使用协议定义的方法原型#import <Foundation/Foundation.h>
...
@protocol XLFormDescriptorCell <NSObject>
...
@optional
+(CGFloat)formDescriptorCellHeightForRowDescriptor:(XLFormRowDescriptor *)rowDescriptor;
^
Parse Issue / Expected a type
另外一个警告:&#34;语义问题:&#39; forDescriptorCellHeightForRowDescriptor的实现中的冲突返回类型:&#34; &#39; ID&#39; vs&#39; CGFloat&#39; (又名&#39;浮动&#39;)
到我的项目的Bridging-Header.h文件中我已经添加了(尽管无论是否添加,都会出现解析错误):
#import "XLForm.h"
本身包含XLFormDescriptorCell.h
我无法看到XLForm返回&#39; id&#39;的位置。有人遇到这个或类似的事情吗?
答案 0 :(得分:8)
CGFloat在CoreGraphics / CGBase.h中声明,它是由UIKit / UIKit.h导入的一些头文件导入的,默认情况下会导入Xcode为您创建的大多数代码文件,并根据需要手动导入。
对于返回类型不匹配,请检查实现中返回的值,确保它准确返回CGFloat,而不是NSNumber或其他任何内容。