zoukankan      html  css  js  c++  java
  • ios开发--常用宏定义(部分转)

    1、release时,屏蔽log

    C代码 复制代码 收藏代码
    1. #if defined (DEBUG) && DEBUG == 1  
    2.   
    3. #else  
    4. #define NSLog(...) {};  
    5. #endif  
    #if defined (DEBUG) && DEBUG == 1
    
    #else
    #define NSLog(...) {};
    #endif

    2、在主线程或在后台执行block

    C代码 复制代码 收藏代码
    1. #define BACK(block) dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), block)  
    2. #define MAIN(block) dispatch_async(dispatch_get_main_queue(),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、设备相关

    C代码 复制代码 收藏代码
    1. #define isRetina ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(640, 960), [[UIScreen mainScreen] currentMode].size) : NO)  
    2.   
    3. #define iPhone5 ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(640, 1136), [[UIScreen mainScreen] currentMode].size) : NO)  
    4.   
    5. #define isPad (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)  
    6.   
    7. #define CurrentSystemVersion ([[UIDevice currentDevice] systemVersion])  
    8.   
    9. #define CurrentLanguage ([[NSLocale preferredLanguages] objectAtIndex:0])   
    #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、区分模拟器和真机

    C代码 复制代码 收藏代码
    1. #if TARGET_OS_IPHONE  
    2. //iPhone Device  
    3. #endif  
    4.   
    5. #if TARGET_IPHONE_SIMULATOR  
    6. //iPhone Simulator  
    7. #endif  
    #if TARGET_OS_IPHONE
    //iPhone Device
    #endif
    
    #if TARGET_IPHONE_SIMULATOR
    //iPhone Simulator
    #endif

    5、根据是否使用ARC做不同操作

    C代码 复制代码 收藏代码
    1. #if __has_feature(objc_arc)  
    2.     //compiling with ARC  
    3. #else  
    4.     // compiling without ARC  
    5. #endif  
  • 相关阅读:
    电力企业信息化建设方案之调度信息报送系统
    HP QC IE11不支持( win7 64位 无法安装)解决方法
    ajax传递list集合
    mysql主从配置
    js动态获取地址栏后的参数
    html页面保存数的两种方式
    微信开发之八 页面获取周围beacon设备
    最好的时光在路上,最美的风景在远方
    【摄影】田子坊
    【前端统计图】echarts实现简单柱状图
  • 原文地址:https://www.cnblogs.com/lovewx/p/4380833.html
Copyright © 2011-2022 走看看