iOS swift 项目 oc 和 swift 混用,文件相互引用

创建swift工程后,如果后面想新建 oc 文件,这时会生成一个  AppName-Bridging-Header.h文件

一,在swift 文件中

1> 引用swift 文件

什么都不需要操作,在所有的swift 文件中,都是可以相互使用的

2> 引用oc 文件

AppName-Bridging-Header.h文件中把要引用的oc头文件导入,然后在所有的 swift 文件中都可以使用这个oc类

二,在oc文件中

1> 引用swift文件

swift 语言创建的工程会自动生成一个 AppName-Swift.h 文件,这个文件会包含所有swift 文件的头文件,因此在oc 文件中使用swift 类只需导入AppName-Swift.h文件即可, 即#import "AppName-Swift.h",然后在这个oc文件中就可以使用所有的swift 类

2> 引用oc 文件

导入要使用oc文件的头文件 eg. #import "UsedOcFile.h"

总结

                            调用oc代码    调用swift代码
swift文件 依赖AppName-Bridging-Header.h 无需声明
oc文件 #import "OC.h" #import "AppName-Swift.h
时间: 2024-11-17 00:54:23

iOS swift 项目 oc 和 swift 混用,文件相互引用的相关文章

swift项目初始化并添加忽略文件Swift.ignore

1 先去GitHub上去把最新的忽略文件下载下载 https://github.com/github/gitignore 2 然后找到Swift.gitignore  把里面的 pod 前面的# 删除然后保存  3 去码云上新建一个项目 然后把项目克隆到本地 git clone  [email protected]:******** 把刚刚的忽略文件放在克隆下来的项目里 进去  cd 当前的项目  然后输入命令 mv Swift.gitignore  .gitinore  隐藏忽略文件 /* d

swift之OC与Swift混编

1.在Swift工程添加OC代码 在swift语言里,同一个项目内的文件基本会放在同一个命名空间里,所以没有.h文件.如果想在swift工程中添加OC代码,需要解决怎么引用OC代码的头文件问题.具体的解决办法就是:新建一个Header File文件里. 如下图所示,在新建的.h文件里面,添加OC代码的头文件 然后需要在项目部署里面配置该引用文件 这样就可以在swift文件里面按照swift语法来调用OC代码了 2.在OC工程中加入Swift代码 oc里面都有头文件,但是swift没有头文件,因此

iOS开发之-- oc 和 swift混编之自建桥接文件

进行swift开发的时候,oc 的项目已经进行了很长一段时间,所以默认使用Xcode自建的桥接文件的时候,这个桥接文件名称是固定的,放置的目录也是无法更改的,所以我就想自己创建一个桥接文件,然后在target里配置一下,但是编译后发现系统一直提示,桥接文件找不到,所以我又找了找方法,研究了一下如何自己建立桥接文件. 1.建立一个 Header 头文件,将它放置在自己想要放置的文件下: 这里我还是取名叫做 "iHome-Bridging-Header",放在了根目录下的 SupportF

ios开发——实用技术OC-Swift篇&本地通知与远程通知详解

本地通知与远程通知详解 一:本地通知 Local Notification的作用 Local Notification(本地通知) :是根据本机状态做出的通知行为,因此,凡是仅需依赖本机状态即可判断需要发出通知的行为都可以或者说应该使用Local Notification来处理.比方说:iBeacon中进入了某个Beacon region,或者说自定义的一些定时提醒等. 构建Local Notification 在iOS中,构建LocalNotification非常简单,只需要掌握好NSLoca

ios开发——实用技术OC-Swift篇&触摸与手势识别

iOS开发学习之触摸事件和手势识别 iOS的输入事件 触摸事件 手势识别 手机摇晃 一.iOS的输入事件 触摸事件(滑动.点击) 运动事件(摇一摇.手机倾斜.行走),不需要人为参与的 远程控制事件(耳机控制手机声音) 1??iOS事件对象都是UIEvent类的实例 UIEvent类对事件类型定义了enum常量: typedef NS_ENUM(NSInteger, UIEventType){ UIEventTypeTouches, UIEventTypeMotion, UIEventRemote

IOS开发从OC到swift入门与修炼

http://www.osforce.cn/course/147?mc147=1412179E99FQ 应用前景 作为一项苹果独立发布的支持型开发语言,已经有了数个应用演示及合作开发公司的测试,相信将在未来得到更广泛的应用.某种意义上Swift作为苹果的新商业战略,将吸引更多的开发者入门,从而增强App Store和Mac Store本来就已经实力雄厚的应用数量基础[4] . 应用范围 Swift 是一种新的编程语言,用于编写 iOS 和 OS X 应用.Swift 结合了 C 和 Object

iOS开发之 -- oc和swift下输出乘法口诀表

闲来无事,写着玩: oc: //乘法口诀表输出 for (int i = 1; i<=9; i++) { for (int j = 1; j<=i; j++) { NSLog(@"%dx%d=%d\n",i,j,i*j); } } swift: //乘法口诀输入 for i in 1...9 { for j in 1...i { print("\(i)x\(j)=\(i*j)\n") } }

iOS JS 和 OC交互 / JS 和 native 相互调用

现在app 上越来越多需求是通过UIWebView 来展示html 或者 html5的内容, js 和 native OC代码交互 就非常常见了. js 调用 native  OC代码 第一种机制 (1)最常用的是 利用 - (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationT

nodejs a和b文件相互引用

//取自于node中文网 http://nodejs.cn/api/modules.html 当循环调用 require() 时,一个模块可能在未完成执行时被返回. 例如以下情况: a.js: console.log('a 开始'); exports.done = false; const b = require('./b.js'); console.log('在 a 中,b.done = %j', b.done); exports.done = true; console.log('a 结束'