[英]How to use a Swift protocol in ObjC Framework
我刚开始在我的ObjC框架项目中添加Swift,因为它很新,直接解决了与CloudKit的差距,因此可能有趣的是逐步迁移到Swift代码。
我认为我从简单的协议开始。
我做了以下内容: - 我创建了一个Swift文件,如你所知,框架没有bridghing标头 - 在这个文件中添加了我的协议
并知道我喜欢在课堂上使用它但是如何? 类的解决方案很简单,您只需定义一个前向声明。 但那是关于协议吗?
在他们看来,这是我必须迁移的最后一个元素,或者你知道一种方法吗?
更新:
我忘了提到的,我标记了协议@objc,因为一般来说可以在ObjC中使用Swift协议,但我只是看到框架中的限制
这是我的项目名称SwiftProtocol
的一个示例:
Renderable.swift
@objc protocol Renderable
{
@objc func render()
}
Triangle.h
#import "SwiftProtocol-Swift.h" // This is very important!
@interface Triangle : NSObject <Renderable>
@end
Triangle.m
@implementation Triangle
- (void)render
{
// Do some rendering
}
@end
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.