在项目中同时使用Objective-C和Swift

时间:2023-03-08 17:05:07

苹果发布的Swift语言可以和之前的Objective-C语言同时存在于一个项目中。

可能有人会认为是同一个类文件中既可以有Objective-C也可以有Swift,这是不对的。同一个类文件或同一个代码块中,不可以同时有这两个语言的代码,而是单独的Swift类文件或Objective-C类文件之间可以相互调用。

接下来就说说在Objective-C类中如何引用swift类和在Swift类中引用Objective-C类的具体步骤。

在Swift中使用Objective-C

首先创建一个Swift的iOS项目:

在项目中同时使用Objective-C和Swift

添加一个Objective-C的类文件,这个类如下:

在项目中同时使用Objective-C和Swift

在项目中同时使用Objective-C和Swift

在添加Objective-C文件同时,Xcode会提示:

在项目中同时使用Objective-C和Swift

点击Yes

在ViewController.m中使用刚刚添加的Objective-C类:

在项目中同时使用Objective-C和Swift

在Objective-C中使用Swift,步骤类似:

首先创建一个Objective-C的iOS项目:

在项目中同时使用Objective-C和Swift

添加一个Swift的类文件:

在项目中同时使用Objective-C和Swift

这个类如下:

在项目中同时使用Objective-C和Swift

在YourProject-Bridging-Header.h中添加:

在项目中同时使用Objective-C和Swift

在ViewController.m中使用刚刚添加的Swift类:

在项目中同时使用Objective-C和Swift

The file:<#YourProjectName#>-Swift.h should already be created automatically in your project, even if you can not see it.

参考文档:http://*.com/questions/24002369/how-to-call-objective-c-code-from-swift