天天看点

关于iOS PrefixHeader (PCH文件) 的配置

犹记得在Xoce6之前,每当创建一个新的项目的时候,Xcode会自动在Supporting files文件夹下面再新建一个"工程名 - Prefix.pch "的文件,如果现在你还想实现这个功能,可能需要一些小小的配置 .

在需要配置PCH文件的地方右键 -> 新建 

New File ... -> iOS -> Other -> PCH File  (如图)

关于iOS PrefixHeader (PCH文件) 的配置

新建的PCH文件中的内容

关于iOS PrefixHeader (PCH文件) 的配置

此时PCH文件还不能做到全局使用,需要配置一下数据

点击你的项目图标,找到右侧标签栏 Build Settings ,

在下方的搜索栏中搜索关键字 " Prefix Header " ,

将 " Apple LLVM 7.0 - Language " -> " PrecompilePrefix Header " 中的值改为 " YES "

并将 " Apple LLVM 7.0 - Language " -> " Prefix Header " 中的值 ,

改为: 项目名/PCH文件名 (例如: Demo/Prefix Header) 如图:

关于iOS PrefixHeader (PCH文件) 的配置

command + S , command + B 保存并编译下你的项目,检查此时是否报错.

配置了半天,那PCH文件具体实现哪些功能呢

1.它可以导入你所需要的第三方框架的头文件,一次输入整个项目不需要再#import

2.它可以存放你整个项目都需要的全局的自定义的宏

附上一些干活 ,希望你们能用上

#ifndef PrefixHeader_pch
#define PrefixHeader_pch

#ifdef  __OBJC__ // 屏蔽C文件的宏,防止以下OC内容被导入C语言文件!

/**
 * 调试的宏
 */
#ifdef DEBUG // 测试!
#define NSLog(fmt, ...) NSLog((@"%s [Line %d] " fmt), __FUNCTION__, __LINE__, ##__VA_ARGS__)
#else
#define NSLog(...)
#endif


#endif

#endif /* PrefixHeader_pch */
           

注 : 使用CocoaPods配置项目后,引入的头文件名称一定要使用" <> " 

例如: #import<Masonry.h> 

未使用CocoaPods配置项目的继续使用 "" 

例如:#import"Masonry.h"