iOS常用宏

设置NSLog
以release模式编译的程序不会用NSLog输出,而以debug模式编译的程序将执行NSLog的全部功能。
  #ifndef __OPTIMIZE__
   # define NSLog(...) NSLog(__VA_ARGS__)
   #else
   # define NSLog(...)
   #endif
判空
   #define isNull(a)  (a==nil || a==NULL || (NSNull *)(a)==[NSNull null] || ((NSString *)a).length==0)
快速设置颜色
   #define CJColor(r,g,b,a) ([UIColor colorWithRed:r/255.0 green:g/255.0 blue:b/255.0 alpha:a])
沙盒document路径
   #define DOCUMENT_DIRECTORY ([NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0])
沙盒cache路径
   #define CACHE_DIRECTORY ([NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES) objectAtIndex:0])
当期系统版本
   #define IOS_VERSION ([[[UIDevice currentDevice] systemVersion] floatValue])
获取屏幕宽高
   #define SCREEN_WIDTH ([[UIScreen mainScreen] bounds].size.width)
   #define SCREEN_HEIGHT ([[UIScreen mainScreen] bounds].size.height)
获取GCD主线程队列
   #define dispatch_async_main_queue(block)\
         if ([NSThread isMainThread]) {\
             block();\
         } else {\
             dispatch_async(dispatch_get_main_queue(), block);\
         }
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容