美文网首页
PCH文件(OC和Swift)

PCH文件(OC和Swift)

作者: 软工官博 | 来源:发表于2017-06-08 15:15 被阅读310次

大家都知道在OC中我们经常使用PCH文件定义一些全局的宏定义,这样使用起来很方便。但是在Swift中创建PCH文件是有些差异的。这里分别就两种语言创建PCH文件做一下记录。

一、在OC代码中,我们可以把一些公用的宏定义,头文件放在PCH文件中,配置文件,来供应整个工程文件下所有文件,每个位置的随时获取与应用.
过程:
①在对应位置创建所你所需要的pch文件!按步骤进行,并点击 Next 完成创建



②在所创建的PCH文件中,在 #define 和 #endif之间可以定义宏,也可导入需要全局使用的文件的头文件(.h文件)



③在上一步完成后,还不能实现效果.还需要对PCH文件进行文件配置:找到对应的Build settings位置,在All中搜索prefix关键字,找到对应的Prefix Header列表项,在对应内容栏里双击,将pch文件路径输入,完成配置!

④任务完成,这样你有什么想要在全局都可以获得参数,方法,文件等都可以写在其中!

二、但是,在swift创建的工程项目文件里,按照上述方案是行不通的 .swift项目中只有 .swift 为后缀的项目文件,pch文件是后缀为 .h 的项目文件,自然是不可行的!但官方为了OC和Swift相互兼容提供了桥接方法,结果尝试了之后,对于.pch文件来说,这却是行不通的!
①首先,我们先来说swift和OC之间的那个桥接文件是怎么来的吧!第一,当然是需要在对应的位置按照如下顺序创建所需要的OC文件:



②在点击 Next 按钮后,会出现一个弹框,如图: {译: 你愿意配置一个OC桥接头文件吗?添加这个文件到(当前项目)中将可以混编swift和OC.你是否愿意让Xcode自动配置这个桥接头文件,从而可以用两种语言来实现多种类的使用?}



③这样就可以使Xcode自己创建并配置好对应的桥接文件.如图:但是对于继承各种类的项目文件来说,一切都是可行的!但是,将pch文件导入,却并不能在swift文件中正常使用其中所定义的宏!

④ 上面的 ③ 这一步是不可行. 下面才是Swift中代替OC的PCH文件的.一切的中心就是那个 Swift File 文件,说白了,他就是Swift环境下个PCH文件,按照步骤,点击Next完成创建!


⑤如下,就是你所期待已久的Swift环境下的"PCH",其实,就是一个Swift文件!在编辑区域,就可以用Swift语言进行如OC下的"宏"的定义! Foundation改为UIKit


这样我们就可以在工程中畅快地使用全局的宏定义了。

相关文章

  • Swift 全局导入某个库

    有过OC开发经验的都知道,可以通过pch全局导入某个库。但是在Swift、OC混编项目中, pch文件只能导入OC...

  • PCH文件(OC和Swift)

    大家都知道在OC中我们经常使用PCH文件定义一些全局的宏定义,这样使用起来很方便。但是在Swift中创建PCH文件...

  • iOS Swift pch使用以及与oc的桥接

    swift中建立pch和在oc中一样,建立后设置其路径,这个就不写了,可以自行查找。 swift使用pch和oc的...

  • OC - Swift 混编详细介绍

    总体思路: 建一个pch文件用于引入 工程名-swift.h,实现OC访问swift建一个桥接文件用于引入 OC头...

  • 记一次混编使用WebKit报错:Cannot find prot

    项目为OC与Swift混编,在swift类里面使用Webkit 解决办法:在项目pch文件里面:

  • import-Swift导入(引用)库头文件-全局/单个库/单个

    一、Swift导入(引用)头文件写法 二、全局导入 OC中全局导入头文件需要写PCH文件,在Swift中的写法是加...

  • oc与Swift混编

    1、要想在oc 类中调用 Swift的类首先要在 pch文件中添加Swift的关联 其次,就是代码调用了。在oc代...

  • PCH文件(Objective-C和Swift)

    大家都知道在OC中我们经常使用PCH文件定义一些全局的宏定义,这样使用起来很方便。但是在Swift中创建PCH文件...

  • input is not a PCH file / file *

    出错原因: swift混编oc时,需要设置桥接头,桥接头文件用.h文件,不要用.pch 新建桥接头文件:**.hi...

  • OC和Swift混编

    OC和Swift的混编,分为两种情况: OC项目中嵌入Swift文件 Swift项目中嵌入OC文件 先来看OC项目...

网友评论

      本文标题:PCH文件(OC和Swift)

      本文链接:https://www.haomeiwen.com/subject/atxtqxtx.html