oc项目pod swift_oc 项目 导入 swift pod - CSDN
  • iOS OC项目调用Swift

    万次阅读 2017-03-17 13:51:27
    网上有很多关于OC项目中使用Swift类的方法,但是亲自试了之后,发现不够详细,多次尝试后,终于找出详细的方法。 现把方法和遇到的问题,记录下来,方便其他同仁借鉴.

    网上有很多关于OC项目中使用Swift类的方法,但是亲自试了之后,发现不够详细,多次尝试后,终于找出详细的方法。
    现把方法和遇到的问题,记录下来,方便其他同仁借鉴:

    一、新建一个OC工程,工程名称自定,在这里我定义为OCAndSwiftDemo,如图:

    新建项目架构图

    二、在新建Swift类之前,进行相关设置,如图:

    相关设置

    三、在项目中,新建一个TestDemo的swift类,点击Create后,提示如图:

    创建OC调用Swift类的桥接文件

    选择Create Bridging Header,一定要选择这个,如果不选择,就引入不了Swift类,然后生成”项目名称-Bridging-Header.h”桥接文件

    然后编辑Swift类,如果Swift类想要被OC发现,必须继承自NSObject,如图:

    TestDemo类

    四、调用Swift类,我们想要调用Swift类的方法里面引入头文件:”项目名称-Swift.h”,如图:

    调用Swift类

    注释:如果调用不了Swift类,可以先Shift+Command+R一下。

    展开全文
  • oc 项目倒入swift 代码的时候 pod 引入库,必须使用user_frameworks 新建swift 类,会自动创建 xxx-bridging-header,点击创建就ok 如果swift pod 库里面报错,直接更新就好了 引用swift类的时候 直接使用 #import ...

    oc 项目倒入swift 代码的时候

    1. pod 引入库,必须使用user_frameworks
    2. 新建swift 类,会自动创建 xxx-bridging-header,点击创建就ok
    3. 如果swift pod 库里面报错,直接更新就好了
    4. 引用swift类的时候 直接使用 #import "xxx-Swift.h",xxx是工程名称,不能直接使用#import “xxxswiftVC .h”这种类名,会报错,
    展开全文
  • OC 项目中使用基于 Swift 的 CocoaPods 库 随着 Swift 的流行,各种神奇的库也开始有对应的 Swift 版本了,而其中一些更神奇的库却只有 Swift 版本… 正巧接手了一个前人用 Swift 写的项目,里面有一个...

    在 OC 项目中使用基于 Swift 的 CocoaPods 库

    随着 Swift 的流行,各种神奇的库也开始有对应的 Swift 版本了,而其中一些更神奇的库却只有 Swift 版本…
    正巧接手了一个前人用 Swift 写的项目,里面有一个非常关键的图表库,找了半天硬是没有发现类似的 OC 版开源库。出于不想造轮子的心态,就让我们这些”落后”的 OC 党想办法兼容这些库吧!好在苹果为了推广这门新语言已经做好了准备工作,虽然还是需要绕个路,但是比起造轮子来,还是简单了不少。

    因为项目是用 CocoaPods 来管理第三方库的,所以这次的兼容工作也会在 CocoaPods 上展开。不过道理还是那个道理,如果没有用到 CocoaPods 的话,直接跳过下面关于 Podfile 的那一步就好了。

    Podfile

    要用 CocoaPods,首先要修改的当然是 Podfile,这是最简单的一步,只需要在文件开始加上这一句:

    1
    
    use_frameworks!
    

    这是告诉 CocoaPods:“请把我要用到的第三方库用动态框架的形式集成进来”。
    因为 Apple 不允许开发者构建内含 Swift 代码的静态库,所以要往 OC 项目中集成第三方 Swift 代码的时候就只能通过动态框架( framework )的形式了。

    而 CocoaPods 还不能很好地将 framework 和静态库混编到一起,所以要么不用 framework,要用就要全部用上。关于这一点,CocoaPods 官博上的原话是这样说的:

    This is an all or nothing approach per integrated targets, because we can’t ensure to properly build frameworks, whose transitive dependencies are static libraries.

    Xcode配置

    这一步的操作比较绕,但总体来说还是简单的。

    首先在你的项目中任意创建一个 Swift 文件,这时候聪明的 Xcode 会问你需不需要它帮助你创建一个 Bridging 文件。
    bridging-header

    嘛,这当然是最好不过了,然而如果(像我这样)手贱点了 Don’t create ,那以后不管你创建再多的 Swift 文件,它都不会问你了。不过,这当然是有手动操作的途径:

    1. 手动创建一个头文件,名字叫 Your_Product_Module_Name-Bridging-Header.h,注意不是 Project_Name
    2. 确保你的项目目录下至少有一个 Swift 文件。
    3. 确保在 Targets 的 Build Settings 里,Product Module Name 是有值的。(如果没有,直接设置为 $(PRODUCT_NAME) 就可以了)
    4. 将 Project 的 Build Settings 里的 Defines Modules 设置为 Yes。(如果项目里没有创建过 Swift 文件的话,这个设置可能是不可见的)

    配置完成!进入代码环节!

    代码

    其实也不需要什么代码啦。

    完成了上面的所有步骤之后,Xcode 会自动生成一个名为 Your_Product_Module_Name-Swift.h 的文件,以后只要在需要使用到 Swift 代码的地方 import 这个文件就可以了。
    现在已经可以直接按照 OC 的语法去调用 Swift 里的属性和方法了,开始愉快地 coding 吧 :)

    P.S. 为了避免循环引用,-Swift.h 文件只能在 .m 文件中 import。如果需要在 .h 文件中使用,就只能用 @class 来前向声明。


    展开全文
  • https://www.jianshu.com/p/429a2dfb1040 这个链接地址解决办法有效,供参考,谢谢

    https://www.jianshu.com/p/429a2dfb1040

    这个链接地址解决办法有效,供参考,谢谢

    展开全文
  • SwiftOC混编

    2020-07-30 23:30:03
    Swift和OC混编,OC项目下Swift和OC的互相调用,Swift项目下Swift和OC的相互调用!
  • pod组件化,swift,objective-c混合...创建swift工程(PodSwift) 创建objective-c工程(httpmanager) 进入工程目录下创建spec pod lib create PodSwift 填写提示信息,然后创建需要暴露调用的类所有的swift类 s....
  • OC和Swift混编Pod引入第三方库的问题 问题描述:Swift应用OC 的开源框架,需要创建一个桥接头文件,问题就出在这个...1.为了在Swift项目中引入OC 开源框架,我使用了pod工具引入。然后下图: 2.之后创建桥
  • #### 2、如果是Swift项目工程引入这个Swift静态库没有任何问题 1、 真机可以正常编译和调用Person ![图片说明](https://img-ask.csdn.net/upload/201903/29/1553841047_338039.png) 2、 不调用Person...
  • OC中调用Swift代码方法

    千次阅读 2018-06-03 09:27:48
    最近在项目中使用到了Swift语言写的第三方的框架,所以在这里将OC中使用Swift的方法说明一下。1.首先要在Build Setting中进行相关配置2.在Podfile文件中要加上use_frameworks!为什么要加use_frameworks!呢?首先需要...
  • 由于本人在开发过程中主要用的是OC语言,所以pod的都是OC库,Podfile里又没加use_frameworks!所以一直都是.a类型的。后来因为需求需要用到一个只有swift版本的库,就使用use_frameworks!将所有.a库变成了.framework...
  • OCSwift混合编程引用Pods管理的模块

    千次阅读 2017-01-07 22:27:34
    OCSwift混合编程引用Pods管理的模块 用Pods安装需要使用的模块后,打开.xcworkspace文件,然后按下图所示设置一下User Header Search Paths: swift中创建OC桥接文件 a. 自动创建桥接文件(仅限于swift工程中第...
  • 项目时发现有的方法OC时没有,需要用swift来实现的,于是就跳进了混编配置的坑,参照了许多博客,爬了一上午才爬出来,在这总结一下我挖坑和填坑的经历,如有错误,欢迎纠正。 需求:OC项目中使用新建swift文件...
  • OC 引用并调用Swift文件

    千次阅读 2019-07-24 17:09:03
    1、我们先创建一个OC项目MyFirstOCUseSwiftDemo 2、我们点击Target看到右边选择Build Settings,把Defines Module改为YES, 3、我们回到工程目录下,New File一个Swift File,起名为MyFristSwift,此时会...
  • 出错原因 library not found for -lAFNetworking ...由于本人在开发过程中主要用的是OC语言,所以pod的都是OC库,Podfile里又没加use_frameworks! 所以一直都是.a类型的。后来因为需求需要用到一个只有swift版本...
  • OCSwift混编

    2018-07-19 11:31:59
    首先要说明的是,混编时,比如工程原先用oc,你突然创建了一个swift文件,那么xcode会弹出一个是否创建侨界文件的提示,点击是...1.OC里调用swift: xcode会隐形生成类似类似 “工程名-Swift.h”的文件,直接#imp...
  • 最近想试着开始写学着swift项目了,然后就在用cocoapods pod下来的第三方框架的时候出现了问题,先以为是自己创建桥接文件后,配置出错了,但是网上的那些文章都还是能把桥接文件处理好,言归正传,先上图 ...
  • OCSwift混编(惊喜!)

    千次阅读 2015-05-12 20:30:25
    今天在和一位前辈交流的之后,使用了OCSwift混编开发,遇到了一个让我忍不住要欢呼的情况,在这里,跟大家分享一下,也再次赞叹一下XCode的强大.OCSwift混编出现最多的就是在编写Swift代码的过程中使用OC框架了....
  • OC调用Swift方法

    千次阅读 2018-05-02 15:36:48
    第一步:创建桥接文件第二步:配置桥接文件第三步:创建pch文件并配置其路径 第四步:在pch文件中导入如下头文件,注意:...,这里的xxx就是第二步中的Module name, 注意不要写错了 第五步:OC中直接调用Swift...
  • 正好这两天加了一个swift学习群想继续学习swift,发现好多swift初学者,在混编这块还不是很清楚,当初自己初学的时候也经历了这么一个痛苦的过程,所以把自己的痛苦过程也写一下。当然这也是第一次写文章,想想有点...
  • swift使用cocoapods导入oc三方库

    千次阅读 2016-06-16 10:51:08
    这里主要说几个关于cocoapods导入三方库需要注意的问题和我遇到的坑 1、swift语言使用cocoapods配置...2、swift调用oc的三方库  a、要建立一个桥接文件,然后在target——>build setting中搜索bridg 把Objectiv
1 2 3 4 5 ... 20
收藏数 1,691
精华内容 676
关键字:

oc项目pod swift