/**

*  1. RGB背景色

*/

#define PPCOLOR_RGB(r,g,b) [UIColor colorWithRed:(r)/255.0 green:(g)/255.0 blue:(b)/255.0 alpha:1]

#define PPCOLOR_BG [UIColor colorWithRed:231/255.0 green:231/255.0 blue:231/255.0 alpha:1]

#define PPCOLOR_RANDOM PPCOLOR_RGB(arc4random_uniform(255), arc4random_uniform(255), arc4random_uniform(255))

#define PPCOLOR_TABBAR_TITLE PPCOLOR_RGB(236,103,0)

#define PPCOLOR_TABBAR_NORMAL PPCOLOR_RGB(117,117,117)

// 监听选中排序 通知

extern NSString *const PPHomeSortVcNoticefication;

extern NSString *const PPHomeSortSelectedSort;

// 监听修改分类 通知 -- dropdown cell

extern NSString *const PPHomeCategoryVcCategorySelectedNoticefication;

extern NSString *const PPHomeCategorySelectedCategory;

extern NSString *const PPHomeCategorySelectedSubCategoryName;

// 监听修改区域 通知

extern NSString *const PPHomeRegionVcRegionSelectedNoticefication;

extern NSString *const PPHomeRegionSelectedRegion;

extern NSString *const PPHomeRegionSelectedSubRegionName;

// 监听收藏, 取消收藏 通知

extern NSString *const PPCollectionStateDidChangeNoticefication;

extern NSString *const PPIsCollectedkey;

extern NSString *const PPCollectDealkey;

// 监听支付宝 完成支付, 跳转

extern NSString *const PPAlipayResultNoticefication;

extern NSString *const PPAlipayResultURLKey;

/**

*  2.通知

*/

#define PPNOTICEFICATION [NSNotificationCenter defaultCenter]

/**

*  3. 获取屏幕宽度

*/

#define PP_SCREEN_WIDTH [UIScreen mainScreen].bounds.size.width

#define PP_SCREEN_HIGHT [UIScreen mainScreen].bounds.size.height

#define PP_SCREEN_SIZE [UIScreen mainScreen].bounds.size

#define PP_SCREEN_RECT [UIScreen mainScreen].bounds

/**

*  4. weakSelf

*/

#define WS(weakSelf)  __weak typeof(self)weakSelf = self

// ---------------------------- 打印日志  ----------------------------------

// 自定义log

#ifdef DEBUG

#define PPLog(FORMAT, ...) fprintf(stderr,"\n%s %d\n %s\n", __FUNCTION__, __LINE__, [[NSString stringWithFormat:FORMAT, ##__VA_ARGS__] UTF8String])

//#define PPLog(...) NSLog(@"%s %@",__func__, [NSString stringWithFormat:__VA_ARGS__])

#else

#define PPLog(FORMAT, ...)

#endif

// 打印返回responsedata

#define PPLogData(obj,content) \

if(SADEBUG) \

{ \

NSData *data = [NSJSONSerialization dataWithJSONObject:obj options:0 error:nil]; \

NSString *string = [[NSString alloc]initWithData:data encoding:NSUTF8StringEncoding]; \

NSLog(@"%@----->%@",content,string); \

}

#define XCODE_COLORS_ESCAPE @"\033["

#define XCODE_COLORS_RESET_FG  XCODE_COLORS_ESCAPE @"fg;"

#define XCODE_COLORS_RESET_BG  XCODE_COLORS_ESCAPE @"bg;"

#define XCODE_COLORS_RESET     XCODE_COLORS_ESCAPE @";"

/**  不同等级的Log,也可开关,当前已开  */

#define LOG_LEVEL_Warn

#define LOG_LEVEL_INFO

#define LOG_LEVEL_ERROR

//如需关闭,就将你需要关闭的宏定义注销那么该种形式的Log将不显示或者以默认颜色显示

#ifdef LOG_LEVEL_ERROR

#define KKLogError(frmt, ...) NSLog((XCODE_COLORS_ESCAPE @"fg255,0,0;" frmt XCODE_COLORS_RESET), ##__VA_ARGS__)

#else

#define KKLogError(...) //NSLog(__VA_ARGS__)

#endif

// 设置输出颜色 --  需要安装Xcode colors 插件 https://github.com/robbiehanson/XcodeColors

#define XCODE_COLORS_ESCAPE @"\033["

#define XCODE_COLORS_RESET_FG  XCODE_COLORS_ESCAPE @"fg;" // Clear any foreground color

#define XCODE_COLORS_RESET_BG  XCODE_COLORS_ESCAPE @"bg;" // Clear any background color

#define XCODE_COLORS_RESET     XCODE_COLORS_ESCAPE @";"   // Clear any foreground or background color

#define LogBlue(frmt, ...) PPLog((XCODE_COLORS_ESCAPE @"fg0,0,255;" frmt XCODE_COLORS_RESET), ##__VA_ARGS__)

#define LogRed(frmt, ...) PPLog((XCODE_COLORS_ESCAPE @"fg255,0,0;" frmt XCODE_COLORS_RESET), ##__VA_ARGS__)

#define LogBlack(frmt, ...) PPLog((XCODE_COLORS_ESCAPE @"fg0,0,0;" frmt XCODE_COLORS_RESET), ##__VA_ARGS__)

#define LogBrown(frmt, ...) PPLog((XCODE_COLORS_ESCAPE @"fg153,102,51;" frmt XCODE_COLORS_RESET), ##__VA_ARGS__)

#define LogCyan(frmt, ...) PPLog((XCODE_COLORS_ESCAPE @"fg0,255,255;" frmt XCODE_COLORS_RESET), ##__VA_ARGS__)

#define LogGreen(frmt, ...) PPLog((XCODE_COLORS_ESCAPE @"fg0,255,0;" frmt XCODE_COLORS_RESET), ##__VA_ARGS__)

#define LogMagenta(frmt, ...) PPLog((XCODE_COLORS_ESCAPE @"fg255,0,255;" frmt XCODE_COLORS_RESET), ##__VA_ARGS__)

#define LogOrange(frmt, ...) PPLog((XCODE_COLORS_ESCAPE @"fg255,127,0;" frmt XCODE_COLORS_RESET), ##__VA_ARGS__)

#define LogPurple(frmt, ...) PPLog((XCODE_COLORS_ESCAPE @"fg127,0,127;" frmt XCODE_COLORS_RESET), ##__VA_ARGS__)

#define LogYellow(frmt, ...) PPLog((XCODE_COLORS_ESCAPE @"fg255,255,0;" frmt XCODE_COLORS_RESET), ##__VA_ARGS__)

#define LogWhite(frmt, ...) PPLog((XCODE_COLORS_ESCAPE @"fg255,255,255;" frmt XCODE_COLORS_RESET), ##__VA_ARGS__)

我的pch文件的更多相关文章

  1. iOS 关于PCH文件(全局文件)的介绍

    1.pch文件是什么 pch文件即 扩展名为.pch的预编译文件.是将工程中较稳定的不会经常修改的代码预先编译好,放在一个公共的文件(.pch)里. 2.pch 文件的作用 A.存放宏. 比如  #d ...

  2. 如何配置pch文件

    pre-Compile Header(预编译头文件) pre-Compile Header简称PCH,由编译器在建立工程时自动生成; 其中存放有工程中已经编译的部分代码; 在以后建立工程时不再重新编译 ...

  3. XCode6 生成prefix.pch文件

    XCode6里, 新建工程默认是没有pch文件的,苹果取消pch文件这一点肯定有它的道理,刚开始很多人可能不适应,如果我们想使用pch文件,需要手动添加,添加步骤如下:(依旧直接上图)

  4. iOS PCH文件

    在Xcode6之前,创建一个新的工程,Xcode会再Support Files文件夹下自动创建一个"工程名 - prefix.pch"文件,也是一个头文件,pch文件的内容能被项目 ...

  5. Xcode6如何自己添加pch文件?

    1.先自己添加.pch文件(右击new file) 2.最重要的一步,如何让工程识别! 在Build settings里搜索Prefix Header, 第一个箭头选择yes,第二箭头把你的pch的路 ...

  6. PCH文件

    作用:xcode5 自带的一个文件,xcode以后这个文件需要自己手动创建(这个是xcode5 和xcode6最大的区别)提前编译文件,一般情况下.我们在pch文件中#import一些项目中常用的软件 ...

  7. iOS开发 - OC - PCH文件使用

    一. PCH文件的作用 Xcode中,PCH文件在程序编译的时候会自动包含进去.也就是说PCH中的内容是全局的,可以使用在程序的任何地方,通过这个特性,我们可以概括到PCH的作用有以下几个方面: (1 ...

  8. iOS----------使用 Xcode6或Xcode7配置.pch文件

    刚上手 Xcode6/Xcode7 的人,总会发现之前在 6 之前常常会在“利用名-Prefix.pch”这个文件中来配置我们全局要用到的头文件,但是 xcode6 没有了,人家说,这类东西有时候也会 ...

  9. OC中.pch文件的解释

      在IOS开发的项目中有一个Prefix.pch,.pch文件是什么?  Prefix.pch:扩展名.pch表示"precompiled header",这是一个你工程要用到的 ...

  10. pch文件的使用

    pch文件的应用场景:1.用来定义一些全局的宏2.用来导入一些全局都能访问的头文件(如果只需要让.m或者.mm文件访问到,不需要让.c文件访问到,那么需要把头文件写到#ifdef _OBJC_ #en ...

随机推荐

  1. MAC OS X 终端命令入门 (简单常用整理)

    在这里记下..防止丢失 pwd 当前工作目录 cd(不加参数) 进root cd(folder) 进入文件夹 cd .. 上级目录 cd ~ 返回root cd - 返回上一个访问的目录 rm 文件名 ...

  2. linux 内核 编绎配制选项详解

    http://blog.sina.com.cn/s/blog_8308bc810102ux0j.html

  3. vim的一些高级配置

    今天有幸看到一篇博文,有一些vim的高级配置 在linux或者unix下面的.vimrc文件中,在其中可以添加如下片段,可以实现解释上面你说的那些高级用法 " Ctrl + K 插入模式下光 ...

  4. C# - 集合类 - 集合类型

    Stack类 ns:System.Collections 此类模仿了一个简单的先进后出(LIFO)的集合 它实现了ICollection接口 可以通过三种方式创建Stack类对象 Stack stac ...

  5. L2TP

    点击查看详情>>   我的贡献 |退出 L2TP 编辑词条 L2TP是一种工业标准的Internet隧道协议,功能大致和PPTP协议类似,比如同样可以对网络数据流进行加密.不过也有不同之处 ...

  6. arc项目中使用非arc文件

    因为之前没有ARC机制,好多比较好的类库都是使用的非ARC,或是有些大牛还是不喜欢用ARC,封装的类也是非ARC的,想要在自己的ARC项目中使用这些非ARC类库,只需要简单的设置一下就可以了. 1.在 ...

  7. 查看kindle paperwhite2上卡索引书籍的方法

    昨天kindle耗电量突然加快,经过检查和网络搜索得知是卡索引导致的耗电量增大.我自己通过关闭索引的方式解决了这个问题. 在这个过程中发现了一个可以直接找到所有卡索引书籍的方法,在此分享一下. 首先打 ...

  8. 百度编辑器umeditor使用总结

    百度编辑器是一个功能很全.很强大. 百度单张图片上传只能存储在项目下面,而不能独立自定义存储位置,因此重写上传代码 百度文章中的图片是通过base64实现的,直接存储在数据库中 tomcat通过虚拟路 ...

  9. C++学习(四)

    一.拷贝构造函数和拷贝赋值运算符1.拷贝构造:用一个已有的对象,构造和它同类型的副本对象——克隆.2.形如class X {  X (const X& that) { ... }};的构造函数 ...

  10. visio篇章--1

    因为要做需求规格说明书的需要,所以学着用visio.发现visio中其实有很多东西的.我昨晚是用它来画ER图.不画不知道,花了之后才发现有很多窍门在里面.不说废话.我列举一下应该要的东西 1.百度链接 ...