gpt4 book ai didi

ios - 使使用 swift 协议(protocol)作为参数的 Objective-C 方法可公开访问

转载 作者:行者123 更新时间:2023-11-28 12:42:29 24 4
gpt4 key购买 nike

我有一个使用 swift 协议(protocol)作为参数类型的 objective-c 方法。签名看起来像 + (void) my_ObjC_method: (id<my_Swift_protocol>) parameter_name;

我通常知道如何使 Objective-C 可以访问 swift 协议(protocol)。我是这样实现的:

@objC protocol my_Swift_protocol : class {
//...methods go here
}

我的问题是我想制作 my_ObjC_method公众可访问。这通常只需将其添加到 @interface 中的头文件中即可完成。部分。遗憾的是,这需要将桥接 header 导入 .h 文件,以便 .h 文件知道我的 swift 协议(protocol)并将其识别为有效类型。但是不能将自动生成的桥接头文件导入到其他头文件中。

解决或解决此问题的好方法是什么?

最佳答案

也许您可以使用@protocol 指令作为前向声明。

我的类.h:

#import <Foundation/Foundation.h>

@protocol my_Swift_protocol;

@interface MyClass : NSObject
+ (void) my_ObjC_method: (id<my_Swift_protocol>) parameter_name;

@end

关于ios - 使使用 swift 协议(protocol)作为参数的 Objective-C 方法可公开访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39099196/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com