OC 和Swift互相混编调用
2016-07-14 本文已影响4813人
wg689
此方案是swift3,现在swift4出来了,估计不适用了 ,特此声明,最近有点忙(出轨去了) 没法实时更新了,抱歉
一 ) OC 添加swift 文件,Swift调用OC
- 1)已有的OC项目new file 创建swift 文件
- 2)出现如下所示的弹框
Snip20160714_2.png- 5)桥接文件中添加OC的.h文件(如上图所示)
- 6)swift 文件中调用OC 方法 如下图所示
Snip20160714_3.png
附代码:swift调用OC
// // test.swift // ZhuRenWong // // Created by HLH on 16/7/14. // Copyright © 2016年 qitian. All rights reserved. // import Foundation class learnSwift : NSObject{ func logStr(str:String){ NSLog("这是一swift 的log:%@", str) let qtcom = QTCommonTools() qtcom.showAlert("henhao"); } }
二) OC中调用Swift 方法
- 在OC 文件中引入头文件
#import "ZhuRenWong-Swift.h"
其中ZhuRenWong
是项目的名称,后面的-Swift.h
是固定的写法 - 写OC的代码
创建对象
#import "ZhuRenWong-Swift.h" - (void)testSwift{ //learnSwift 是Swift类 learnSwift * learnS = [[learnSwift alloc] init]; [learnS logStr:@"code from oc"]; }
如图所示
OC调用Swift- 上述方法亲测都可以编译通过.
导入ZhuRenWong-Swift.h就可以使用swift 类的原因?
答:我们创建一个类,在
ZhuRenWong-Swift.hZhuRenWong-Swift.h
中会生成OC对应的类,xcode为我们做了转化,所以我们只需要导入ZhuRenWong-Swift.h
就可以引用swift中的类
详情如下图所示好文推荐:
在oc项目中添加swift文件,并设置oc-swift混编
- 作者开发经验总结的文章推荐,持续更新学习心得笔记
Runtime 10种用法(没有比这更全的了)
成为iOS顶尖高手,你必须来这里(这里有最好的开源项目和文章)
iOS逆向Reveal查看任意app 的界面
JSPatch (实时修复App Store bug)学习(一)
iOS 高级工程师是怎么进阶的(补充版20+点)
扩大按钮(UIButton)点击范围(随意方向扩展哦)
最简单的免证书真机调试(原创)
通过分析微信app,学学如何使用@2x,@3x图片
TableView之MVVM与MVC之对比
使用MVVM减少控制器代码实战(减少56%)
ReactiveCocoa添加cocoapods 配置图文教程及坑总结