iOS-OC、Swift 混编之桥接文件

新建一个OC语言的项目,然后添加一个基于NSObject的Swift文件SwiftFileModel类

.swift

import UIKit

class SwiftFileModel: NSObject {
func firstMethod() {
print("SwiftFileModel");
}
}

这时会提示你是否添加桥接文件,点击创建后体统会自动创建一个桥接文件,但是如果点击取消后,就需要自己建桥接文件;


手动创建桥接文件

新建h文件,名字随便起,但最好专业些,我这里不专业

然后去 Build Settings 搜索brid,找到 Objctive-C Bridging Header,将刚才建好的桥接文件直接拖入,会自动引用路径;

到这里桥接文件及配置就OK了;


Swift调用OC

新建一个基于NSObject的OC文件OcFileModel类

.h

#import <Foundation/Foundation.h>

@interface OcFileModel : NSObject
+ (void)ocLog;
@end

.m

#import "OcFileModel.h"

@implementation OcFileModel
+ (void)ocLog{
    NSLog(@"OcFileModel");
}
@end

将OcFileModel的头文件 #import "OcFileModel.h" 添加到桥接文件中

在SwiftFileModel.swift类中实现调用ocLog方法

OC调用Swift

原文地址:https://www.cnblogs.com/henusyj-1314/p/9112351.html

时间: 2024-10-12 07:25:20

iOS-OC、Swift 混编之桥接文件的相关文章

OC+swift混编

作者:fengsh998 原文地址:http://blog.csdn.net/fengsh998/article/details/34440159 转载请注明出处 如果觉得文章对你有所帮助,请通过留言或关注微信公众帐号fengsh998来支持我,谢谢! swift 语言出来后,可能新的项目直接使用swift来开发,但可能在过程中会遇到一些情况,某些已用OC写好的类或封装好的模块,不想再在swift 中再写一次,哪就使用混编.这个在IOS8中是允许的. 先中简单的入手,先研究在同一个工程目录下混合

OC跟Swift混编

OC项目中使用Swift 本文版权归作者所有,如需转载请联系孟祥月 CSDN博客:http://blog.csdn.net/mengxiangyue  独立博客:http://mengxiangyue.com 最近公司的项目开始计划使用Swift,由于原先的工程都是使用OC编写的,不可能一下全部转换成Swift,所以采用OC与Swift混编的方式是最好的选择.这篇文章只是一个简单的介绍,并没有太高深的知识. 我新建了一个演示的OC工程,当然你可以使用你已经存在的OC的工程.如果我们想要在OC工程

swift混编oc碰到的问题

在swift中混编苹果官方的Reachability OC文件. 因为swift工程的target是生成framework而非app,framework中调用oc与app中使用桥接文件还不一样,参考: http://blog.csdn.net/cooldragon/article/details/50172649 主要步骤为: 1.将Reachablity.m 和.h文件加入到工程中 2.在ESPlus.h 中最后加上 (ESPlus为Framework名称) #import <ESPlus/R

Swift与OC的混编

自04年苹果推出了Swift之后,确实很快就受到许多开发者的欢迎但在实际开发时,可能有许多第三方库并未实现代码Swift化,这时就需要Swift与OC的混编技巧: 1.在.h文件中引用Swift的类和方法,需要在.h文件中进行引用,需要注意引用格式: #import "yourProjectName-swift.h" 2.在Build Settings -> Packaging -> Defines Module 改为YES 3.在Swift中引用OC的方法与类,则需在 B

[ios][swift]swift混编

参考:http://www.tuicool.com/articles/QZNrErM 即使你尽量用Swift编写iOS程序,难免会遇到部分算法是用C++语言编写的.那你只能去问问”度娘“或“狗哥”怎么用 Swift 调用C++算法. 一,C,C++, Objective-C,Swift有什么关系,还有什么是混编 -.-? 1. 当然是兄弟关系,虽然Objective-C是扩充C的 面向对象 编程语言,C++是在C语言的基础上开发的一种通用 编程语言 .Swift是由苹果公司推出有意让其与Obje

初探swift语言的学习笔记九(OC与Swift混编)

swift 语言出来后,可能新的项目直接使用swift来开发,但可能在过程中会遇到一些情况,某些已用OC写好的类或封装好的模块,不想再在swift 中再写一次,哪就使用混编.这个在IOS8中是允许的. 先中简单的入手,先研究在同一个工程目录下混合使用的情况. 为了演示.先准备两个类 第一个是swift语言写的类,文件名为 act.swift import Foundation class Act : NSObject { func hasAct(tag:Int) -> String { swit

Swift语言学习之OC和Swift混编

本文转自http://www.helloswift.com.cn/swiftbase/2015/0112/3469.html iOS OC和Swift混编 1.创建一个swift或者oc的工程:我这里是创建的Swift语言的工程,工程名SwiftTest 2.在工程中代码目录下创建一个oc的类,选择oc语言, 会出一个对话框,选择YES          3.这时会在工程里看到下图这样一个头文件           4.在这个头文件里添加你的OC文件的.h文件,就可以在任意swift文件中自行调

关于oc和swift混编 框架framework时 只能在真机运行或只能在模拟器单独运行的解决方案

问题描述: 关于oc和swift混编 框架framework时 只能在真机运行或只能在模拟器单独运行的解决方案. 问题提供者:by 走跑 解决方案: 首先制作swift版本的framework(Cocoa Touch Framework)取名FirstMixed 1. 工程里面新建一个SwiftView.swift文件,继承UIView,class必须是public修饰 2. 生成真机和模拟器通用的FirstMixed.framework参考这篇文章的制作通用动态库部分,这里面有教如何生成真机和

obeject-c 与 swift 混编

p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px ".PingFang SC"; color: #454545 } p.p2 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px "Helvetica Neue"; color: #454545 } span.s1 { font: 12.0px "Helvetica Neue" } span.s2 {