ios开发--常用宏定义(部分转)

本文介绍了iOS开发中常用的宏定义技巧,包括如何在发布时屏蔽log、在主线程或后台执行block、判断设备类型和系统版本等。同时,还提供了区分模拟器与真机以及根据是否使用ARC进行不同操作的方法。
1、release时,屏蔽log
 
#if defined (DEBUG) && DEBUG == 1  
  
#else  
#define NSLog(...) {};  
#endif  
 
2、在主线程或在后台执行block

#define BACK(block) dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), block)  
#define MAIN(block) dispatch_async(dispatch_get_main_queue(),block)  
 
3、设备相关
 
#define isRetina ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(640, 960), [[UIScreen mainScreen] currentMode].size) : NO)  
  
#define iPhone5 ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(640, 1136), [[UIScreen mainScreen] currentMode].size) : NO)  
  
#define isPad (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)  
  
#define CurrentSystemVersion ([[UIDevice currentDevice] systemVersion])  
  
#define CurrentLanguage ([[NSLocale preferredLanguages] objectAtIndex:0])   
 
4、区分模拟器和真机

#if TARGET_OS_IPHONE  
//iPhone Device  
#endif  
  
#if TARGET_IPHONE_SIMULATOR  
//iPhone Simulator  
#endif  
 
5、根据是否使用ARC做不同操作

#if __has_feature(objc_arc)  
    //compiling with ARC  
#else  
    // compiling without ARC  
#endif  

转 http://apluck.iteye.com/blog/1768787

转载于:https://www.cnblogs.com/ygm900/p/3156386.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值