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  
  • 相关阅读:
    python正则表达式
    pyperclip模块
    python画国旗
    linux6.5禁用telnet
    限制用户su到root
    按系统日期生成目录
    微软windows logo配色rgb
    fastclick使用与 fastclick ios11.3相关bug原因(ios输入框点击变得不灵敏,ios input失焦后,页面上移,点击不了)
    vue iframe嵌套页面高度自适应 (ios 宽度扩大的bug , ios展示比例问题)
    iOS设备 微信h5页面回退 内容不刷新的问题
  • 原文地址:https://www.cnblogs.com/lovewx/p/4380833.html
Copyright © 2011-2022 走看看