PCH文件(OC和Swift)

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

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


PCH文件(OC和Swift)_第1张图片

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


PCH文件(OC和Swift)_第2张图片

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

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

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


PCH文件(OC和Swift)_第4张图片

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


PCH文件(OC和Swift)_第5张图片

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

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


PCH文件(OC和Swift)_第7张图片

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


PCH文件(OC和Swift)_第8张图片

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

你可能感兴趣的:(PCH文件(OC和Swift))