我曾经在XCode 6.0 DP中使用Swift一段时间,在我现有的项目中使用它.我试图从我的ViewController.swift文件访问MyModel.h(我现有的Objective C Model对象).我想导入
#import "MyModel.h"
到我的Swift文件.但我无法找到如何做到这一点.
sha*_*988 79
发布答案,如果它有助于某人面临同样的问题.
我发现在iOS Developer Library中给出了一个非常直接的解决方案.请参考以下链接:
Apple Doc说:
要在与Swift代码相同的应用程序目标中导入一组Objective-C文件,您需要使用Objective-C桥接头将这些文件公开给Swift.当您将Swift文件添加到现有的Objective-C应用程序或将Objective-C文件添加到现有的Swift应用程序时,Xcode可以创建此头文件.
所以我创建了MyApp-Bridging-Header.h
文件并添加了以下行:
#import "MyModel.h"
Run Code Online (Sandbox Code Playgroud)
现在它让我在我的模型中使用ViewController.swift
如下:
var myModel = MyModel()
myModel.name = "My name"
myModel.dobString = "11 March,2013"
println ("my model values: Name: \myModel.name and dob: \myModel.dobString")
Run Code Online (Sandbox Code Playgroud)
对于那些想要解决这个问题的人来说.如果必须从头开始创建桥接文件,还必须在Build Settings> Swift Compiler> Objective-C Bridging Header中指定它的路径.
iPa*_*tel 17
在Document中说swift编程没有import语句.
要导入Swift应用程序或创建混合语言应用程序的Objective C应用程序,您需要创建桥接标题,您可以引用Apple Docs
它说
无论项目最初是Objective-C还是Swift项目,Objective-C和Swift文件都可以共存于一个项目中.您只需将另一种语言的文件直接添加到现有项目即可.这种自然的工作流程使创建混合语言应用程序和框架目标与创建用单一语言编写的应用程序或框架目标一样简单.
要在与Swift代码相同的应用程序目标中导入一组Objective-C文件,您需要使用Objective-C桥接头将这些文件公开给Swift.当您将Swift文件添加到现有的Objective-C应用程序或将Objective-C文件添加到现有的Swift应用程序时,Xcode可以创建此头文件.
编辑:我已经创建了一个代码,您可以在这里找到它
归档时间: |
|
查看次数: |
60953 次 |
最近记录: |