当Objc-C桥接到Swift以及反之时如何查看方法签名?

咕cake蛋糕

如果我有一些Obj-C代码,而我是从Swift代码中调用的,或者我有一些Swift代码,则是从Objective-C中调用的。然后,如何查看这些方法的签名。

我之前做过此操作,并记得有一个Xcode生成的桥接标头,其中包含桥接方法签名。但是我现在根本找不到。我似乎记得它已生成到派生数据文件夹中,但是我根本找不到它。

谢谢

马丁·R

要查看如何将Objective-C接口导入Swift,请选择头文件,然后从“相关项”按钮中选择“生成的接口”:

在此处输入图片说明

示例:OClass.h:

NS_ASSUME_NONNULL_BEGIN

@interface OClass : NSObject

- (void)bar:(NSString *)string;

@end

NS_ASSUME_NONNULL_END

生成的接口:

open class OClass : NSObject {
    open func bar(_ string: String)
}

要查看Swift类如何映射到Objective-C,请选择一个Swift文件,然后从“相关项”按钮中选择“生成的接口->“ ProjectName.h”:

在此处输入图片说明

示例:“ SClass.swift”

class SClass: NSObject {
    @objc func foo() {

    }
}

“ MyProject-Swift.h”:

// ...
SWIFT_CLASS("_TtC9MyProject6SClass")
@interface SClass : NSObject
- (void)foo;
- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
@end
// ...

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章