iOS .pch文件的使用
什么是.pch文件
预编译头文件(一般扩展名为.PCH),是把一个工程中较稳定的代码预先编译好放在一个文件(.PCH)里。这些预先编译好的代码可以是任何的C/C++代码--甚至可以是inline函数,只它们在整个工程中是较为稳定的,即在工程开发过程中不会经常被修改的代码。 我自己的理解就是 这个.pch文件的作用就是 在这里定义一些东西之后可以在整个工程内的任何一个文件中使用在.pch
文件中定义的东西 并且不用导入任何的头文件 我的做法:
1.首先呢我会先添加一个.h文件 用来写宏定义
如图:

创建成功之后 可以在这个文件里边添加 一些自己需要的宏定义
比如:我的
//
// Header.h
// My9xiuShow
//
// Created by TaoLi on 16/12/15.
// Copyright © 2016年 LSS. All rights reserved.
// #ifndef Header_h
#define Header_h //字体颜色
#define RGBAColor(r,g,b,a) [UIColor colorWithRed:(r)/255.0 green:(g)/255.0 blue:(b)/255.0 alpha:a] #endif /* Header_h */
我只在这里边添加了一个宏
2.创建.pch文件 新建文件-选择pch文件

这样就可以创建一个.pch文件 SPrefixHeader
3.将Header.h 跟.pch文件产生联系 打开.pch文件 添加 import “Header.h”
#import <UIKit/UIKit.h>
#import <Foundation/Foundation.h>
#import "Header.h"
代码如下:
#ifndef SPrefixHeader_pch
#define SPrefixHeader_pch // Include any system framework and library headers here that should be included in all compilation units.
// You will also need to set the Prefix Header build setting of one or more of your targets to reference this file. #import <UIKit/UIKit.h>
#import <Foundation/Foundation.h>
#import "Header.h" #endif /* SPrefixHeader_pch */
4.将.pch文件跟项目关联起来
buildSetting- 搜索prefix header - 找到Prefix Header
如图:
1 将Precompile prefix header 设置为yes 这样的目的是编译之后这个文件会缓存 这样可以加快再次编译的速度
2 Prefix Header 后边双击 然后将新建的那个.pch文件拖进去(一次不成功就多试几次 然后就行了)拖进去之后将这个目录做修改只剩下自己的 项目名/.pch文件名 就像我的截图上那样 My9xiushow/SPreficHeader.pch 5.这样的话就大功告成了: 人后 commend+b 编译下本项目 然后就可以使用了 如我:rgb这个宏定义就可以使用了

--------------------修改----------
拖进。pch文件之后 路径的问题注意下: ${SRCROOT}/xmChongGou/结构准备/xm_prefix.pch 写法就是
${SRCROOT}/ 根目录
xmChongGou/结构准备/xm_prefix.pch 在根目录相处在的位置
这样的话 比较好 如若为水 为何不能嫌弃惊涛骇浪
iOS .pch文件的使用的更多相关文章
- iOS PCH文件
在Xcode6之前,创建一个新的工程,Xcode会再Support Files文件夹下自动创建一个"工程名 - prefix.pch"文件,也是一个头文件,pch文件的内容能被项目 ...
- iOS pch文件的创建
3.iso pch头文件的创建 输入文件名的时候记得打钩 3.1.在Build Settings 里搜索pref就能找到preflx, 点击设置相对路径 $(SRCROOT) +路径:成功了就会显示 ...
- 【原】iOS学习之PCH文件
1. PCH文件概述 PCH文件是一种预编译头文件(一般扩展名为.PCH),是把一个工程中较稳定的代码预先编译好放在一个文件(.PCH)里.这些预先编译好的代码可以是任何的C/C++代码--甚至可以是 ...
- iOS 如何给Xcode7项目添加“.pch”文件
1.首先打开你的项目(演示使用一个空的项目),按照以下步骤即可 找到“Supporting Files”文件夹,右键即可看到下图,选择“New File...” 2.选择"iOS" ...
- iOS开发- Xcode 7添加pch文件
1.打开你的Xcode工程. 在Supporting Files目录下,选择 File > New > File > iOS > Other > PCH File 然后点 ...
- ios开发 <AppName>-Prefix.pch文件的用法详解
我们知道,每新建立一个工程,比如说HelloWord,在分类SupportingFiles里都会有一个以工程名开头-Prefix.pch结尾的文件,如HelloWord-Prefix.pch.对于这个 ...
- iOS开发中.pch 文件的使用及其相关工程设置
.pch文件 也是一个头文件,pch头文件的内容能被项目中的其他所有源文件共享和访问.是一个预编译文件. 首先说一下pch的作用: 1.存放一些全局的宏(整个项目中都用得上的宏) 2.用来包含一些全部 ...
- Info.plist和pch文件的作用,UIApplication,iOS程序的启动过程,AppDelegate 方法解释,UIWindow,生命周期方法
Info.plist常见的设置 建立一个工程后,会在Supporting files文件夹下看到一个“工程名-Info.plist”的文件,该文件对工程做一些运行期的配置,非常重要,不能删除 注:在旧 ...
- iOS开发之info.pist文件和.pch文件
iOS开发之info.pist文件和.pch文件 如果你是iOS开发初学者,不用过多的关注项目中各个文件的作用.因为iOS开发的学习路线起点不在这里,这些文件只会给你学习带来困扰. 打开一个项目,我们 ...
随机推荐
- HW3.8
import java.util.Scanner; public class Solution { public static void main(String[] args) { Scanner i ...
- POJ-1151 Atlantis 矩形面积并
题目链接:http://poj.org/problem?id=1151 扫描线+离散+线段树,线段树每个节点保存的是离散后节点右边的线段. //STATUS:C++_AC_16MS_208KB #in ...
- SSDT – Error SQL70001 This statement is not recognized in this context-摘自网络
March 28, 2013 — arcanecode One of the most common errors I get asked about when using SQL Server Da ...
- JavaScript----this陷阱的最全收集
原文翻译: JavaScript来自一门健全的语言,所以你可能觉得JavaScript中的this和其他面向对象的语言如java的this一样,是指存储在实例属性中的值.事实并非如此,在JavaScr ...
- 解决div和父div不上对齐
加一个vertical-align: top;就好了.原因就是inline-block会使元素向下对齐.这和padding-top,margin-top没有关系的.使用浮动就不会有这种情况了,当然会带 ...
- ios 解决有关火星坐标的问题
CLLocationManager 定位获取CLLocation 是地球坐标,而MKMapView 获取的是天朝火星坐标,这就导致了使用定位的时候,显示用户的蓝点和当前定位信息偏差(因为蓝点是调用了M ...
- uva 11270 - Tiling Dominoes(插头dp)
题目链接:uva 11270 - Tiling Dominoes 题目大意:用1∗2木块将给出的n∗m大小的矩阵填满的方法总数. 解题思路:插头dp的裸题,dp[i][s]表示第i块位置.而且该位置相 ...
- hdu4462 Scaring the Birds
Scaring the Birds Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others ...
- [RxJS] Drag and Drop example
Improving our mouse drag event Our mouse drag event is a little too simple. Notice that when we drag ...
- iOS开发多线程篇---atomic nonatomic区别
摘要 atomic和nonatomic区别用来决定编译器生成的getter和setter是否为原子操 作.atomic提供多线程安全,是描述该变量是否支持多线程的同步访问,如果选择了atomic 那么 ...