成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

iOS開發(fā)常用宏

移動(dòng)開發(fā) iOS
大家都是知道使用宏不僅方便,而且可以提高開發(fā)效率。下面總結(jié)了iOS開發(fā)過程中的一些常用宏,會(huì)持續(xù)的往里面添加。

[[185940]]

大家都是知道使用宏不僅方便,而且可以提高開發(fā)效率。下面總結(jié)了iOS開發(fā)過程中的一些常用宏,會(huì)持續(xù)的往里面添加。

  1. //字符串是否為空 
  2. #define kStringIsEmpty(str) ([str isKindOfClass:[NSNull class]] || str == nil || [str length] < 1 ? YES : NO ) 
  3. //數(shù)組是否為空 
  4. #define kArrayIsEmpty(array) (array == nil || [array isKindOfClass:[NSNull class]] || array.count == 0) 
  5. //字典是否為空 
  6. #define kDictIsEmpty(dic) (dic == nil || [dic isKindOfClass:[NSNull class]] || dic.allKeys == 0) 
  7. //是否是空對(duì)象 
  8. #define kObjectIsEmpty(_object) (_object == nil \ 
  9. || [_object isKindOfClass:[NSNull class]] \ 
  10. || ([_object respondsToSelector:@selector(length)] && [(NSData *)_object length] == 0) \ 
  11. || ([_object respondsToSelector:@selector(count)] && [(NSArray *)_object count] == 0)) 
  12.   
  13. //獲取屏幕寬度與高度 
  14. #define kScreenWidth \ 
  15. ([[UIScreen mainScreen] respondsToSelector:@selector(nativeBounds)] ? [UIScreenmainScreen].nativeBounds.size.width/[UIScreen mainScreen].nativeScale : [UIScreen mainScreen].bounds.size.width) 
  16. #define kScreenHeight \ 
  17. ([[UIScreen mainScreen] respondsToSelector:@selector(nativeBounds)] ? [UIScreenmainScreen].nativeBounds.size.height/[UIScreen mainScreen].nativeScale : [UIScreen mainScreen].bounds.size.height) 
  18. #define kScreenSize \ 
  19. ([[UIScreen mainScreen] respondsToSelector:@selector(nativeBounds)] ? CGSizeMake([UIScreenmainScreen].nativeBounds.size.width/[UIScreen mainScreen].nativeScale,[UIScreenmainScreen].nativeBounds.size.height/[UIScreen mainScreen].nativeScale) : [UIScreen mainScreen].bounds.size
  20.   
  21. //一些縮寫 
  22. #define kApplication        [UIApplication sharedApplication] 
  23. #define kKeyWindow          [UIApplication sharedApplication].keyWindow 
  24. #define kAppDelegate        [UIApplication sharedApplication].delegate 
  25. #define kUserDefaults       [NSUserDefaults standardUserDefaults] 
  26. #define kNotificationCenter [NSNotificationCenter defaultCenter] 
  27.   
  28. //APP版本號(hào) 
  29. #define kAppVersion [[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleShortVersionString"
  30. //系統(tǒng)版本號(hào) 
  31. #define kSystemVersion [[UIDevice currentDevice] systemVersion] 
  32. //獲取當(dāng)前語言 
  33. #define kCurrentLanguage ([[NSLocale preferredLanguages] objectAtIndex:0]) 
  34. //判斷是否為iPhone 
  35. #define kISiPhone (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone) 
  36. //判斷是否為iPad 
  37. #define kISiPad (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) 
  38.   
  39. //獲取沙盒Document路徑 
  40. #define kDocumentPath [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) firstObject] 
  41. //獲取沙盒temp路徑 
  42. #define kTempPath NSTemporaryDirectory() 
  43. //獲取沙盒Cache路徑 
  44. #define kCachePath [NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES) firstObject] 
  45.   
  46. //判斷是真機(jī)還是模擬器 
  47. #if TARGET_OS_IPHONE 
  48. //真機(jī) 
  49. #endif 
  50.   
  51. #if TARGET_IPHONE_SIMULATOR 
  52. //模擬器 
  53. #endif 
  54.   
  55. //開發(fā)的時(shí)候打印,但是發(fā)布的時(shí)候不打印的NSLog 
  56. #ifdef DEBUG 
  57. #define NSLog(...) NSLog(@"%s 第%d行 \n %@\n\n",__func__,__LINE__,[NSString stringWithFormat:__VA_ARGS__]) 
  58. #else 
  59. #define NSLog(...) 
  60. #endif 
  61.   
  62. //顏色 
  63. #define kRGBColor(r, g, b)     [UIColor colorWithRed:(r)/255.0 green:(g)/255.0 blue:(b)/255.0 alpha:1.0] 
  64. #define kRGBAColor(r, g, b, a) [UIColor colorWithRed:(r)/255.0 green:(r)/255.0 blue:(r)/255.0 alpha:a] 
  65. #define kRandomColor  KRGBColor(arc4random_uniform(256)/255.0,arc4random_uniform(256)/255.0,arc4random_uniform(256)/255.0) 
  66.   
  67. #define kColorWithHex(rgbValue) \ 
  68. [UIColor colorWithRed:((float)((rgbValue & 0xFF0000) >> 16)) / 255.0 \ 
  69. green:((float)((rgbValue & 0xFF00) >> 8)) / 255.0 \ 
  70. blue:((float)(rgbValue & 0xFF)) / 255.0 alpha:1.0] 
  71.   
  72. //弱引用/強(qiáng)引用 
  73. #define kWeakSelf(type)   __weak typeof(type) weak##type = type; 
  74. #define kStrongSelf(type) __strong typeof(type) type = weak##type; 
  75.   
  76. //由角度轉(zhuǎn)換弧度 
  77. #define kDegreesToRadian(x)      (M_PI * (x) / 180.0) 
  78. //由弧度轉(zhuǎn)換角度 
  79. #define kRadianToDegrees(radian) (radian * 180.0) / (M_PI) 
  80.   
  81. //獲取一段時(shí)間間隔 
  82. #define kStartTime CFAbsoluteTime start = CFAbsoluteTimeGetCurrent(); 
  83. #define kEndTime   NSLog(@"Time: %f", CFAbsoluteTimeGetCurrent() - start) 

 

責(zé)任編輯:龐桂玉 來源: iOS大全
相關(guān)推薦

2018-01-16 15:06:36

iPhone XiOS

2018-08-09 20:47:41

2017-02-21 12:56:21

iOSMac命令

2018-01-24 15:42:49

命令功能程序

2014-04-09 10:51:56

iOS開發(fā)常用工具

2014-05-13 09:55:13

iOS開發(fā)工具

2015-03-03 15:59:25

Android開發(fā)屬性

2019-04-12 08:10:33

iOS靜態(tài)分析Xcode

2019-04-26 06:58:56

iOSLLDBXcode

2019-04-18 09:31:07

iOS項(xiàng)目開發(fā)斷點(diǎn)代碼

2011-08-22 14:31:53

iPhone開發(fā)

2011-08-11 15:02:28

iOS目錄

2015-09-01 10:37:54

ios靜態(tài)庫開發(fā)

2016-03-18 09:36:13

ios基礎(chǔ)框架

2014-07-23 13:17:53

iOSUITextField

2011-05-11 09:55:18

iOSObjective-C

2013-09-12 15:37:09

iOS開發(fā)流程

2013-09-12 12:55:53

iOS開發(fā)

2013-06-03 16:27:49

iOS開發(fā)移動(dòng)應(yīng)用移動(dòng)開發(fā)

2013-07-29 04:46:48

iOS開發(fā)iOS開發(fā)學(xué)習(xí)iOS小知識(shí)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 日韩有码一区 | 午夜寂寞影院在线观看 | 日本成人二区 | 一区二区精品在线 | 国产在线97 | 国产又色又爽又黄又免费 | 中文字幕 视频一区 | 一级特黄色毛片 | 中文字幕蜜臀 | 99这里只有精品视频 | 黄色片视频免费 | 精品伊人久久 | 中文字幕在线视频网站 | 国产一区二区在线91 | 成年人国产在线观看 | 91免费福利视频 | 男女视频在线免费观看 | 成人网在线观看 | 久久综合婷婷 | 欧美日韩一二三区 | 中文天堂网 | 国产精品九九视频 | 91人人爽 | 免费在线观看成人 | 国产精品久久99 | 国产aⅴ| 日韩www视频 | 龙珠z国语版在线观看 | 91欧美激情一区二区三区成人 | 日韩欧美国产综合 | 欧美精品一区二区三区在线播放 | 久久久精品一区二区三区 | 欧美1区2区 | 久久精品一级 | 国产99久久久国产精品 | 国产欧美日韩二区 | 久青草影院 | 日韩欧美手机在线 | 久久综合一区 | 国产精品久久久久久久岛一牛影视 | 99re在线|