iOS 日常開發(fā)細節(jié)(代碼篇)

1.宏定義

// ...表示宏定義的可變參數(shù)
// __VA_ARGS__:表示函數(shù)里面的可變參數(shù)
#ifdef DEBUG
#define QYLog(...) NSLog(__VA_ARGS__)
#else
#define QYLog(...)
#endif
// 偏好設置存儲的好處
// 1.不需要關心文件名
// 2.快速進行鍵值對存儲

// 補充:控制器的view
// UITabBarController控制器的view在一創(chuàng)建控制器的時候就會加載view
// UIViewController的view阶界,才是懶加載春畔。

2.枚舉 enum,NS_ENUM,NS_OPTIONS

在iOS6和Mac OS 10.8以后Apple引入了兩個宏NS_ENUM,NS_OPTIONS來重新定義C語言風格的enum,實際上是將enum定義和typedef合二為一,并且采用不同的宏來從代碼角度來區(qū)分。

enum{   
    UIViewAnimationTransitionNone,  
    UIViewAnimationTransitionFlipFromLeft,  
    UIViewAnimationTransitionFlipFromRight,  
    UIViewAnimationTransitionCurlUp,  
    UIViewAnimationTransitionCurlDown,  
} UIViewAnimationTransition;  

替換為:

typedef NS_ENUM(NSInteger, UIViewAnimationTransition) {  
    UIViewAnimationTransitionNone,//默認從0開始  
    UIViewAnimationTransitionFlipFromLeft,  
    UIViewAnimationTransitionFlipFromRight,  
    UIViewAnimationTransitionCurlUp,  
    UIViewAnimationTransitionCurlDown,  
};  

位移操作枚舉定義

 
enum {  
    UIViewAutoresizingNone                 = 0,  
    UIViewAutoresizingFlexibleLeftMargin   = 1 << 0,  
    UIViewAutoresizingFlexibleWidth        = 1 << 1,  
    UIViewAutoresizingFlexibleRightMargin  = 1 << 2,  
    UIViewAutoresizingFlexibleTopMargin    = 1 << 3,  
    UIViewAutoresizingFlexibleHeight       = 1 << 4,  
    UIViewAutoresizingFlexibleBottomMargin = 1 << 5  
};  
typedef NSUInteger UIViewAutoresizing; // UIViewAutoresizing相當于NSUInteger的一個別名使用疆导。  

替換為:

typedef NS_OPTIONS(NSUInteger, UIViewAutoresizing) {  
    UIViewAutoresizingNone                 = 0,  
    UIViewAutoresizingFlexibleLeftMargin   = 1 << 0,  
    UIViewAutoresizingFlexibleWidth        = 1 << 1,  
    UIViewAutoresizingFlexibleRightMargin  = 1 << 2,  
    UIViewAutoresizingFlexibleTopMargin    = 1 << 3,  
    UIViewAutoresizingFlexibleHeight       = 1 << 4,  
    UIViewAutoresizingFlexibleBottomMargin = 1 << 5  
};  
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市葛躏,隨后出現(xiàn)的幾起案子澈段,更是在濱河造成了極大的恐慌悠菜,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,948評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件败富,死亡現(xiàn)場離奇詭異悔醋,居然都是意外死亡,警方通過查閱死者的電腦和手機兽叮,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,371評論 3 385
  • 文/潘曉璐 我一進店門芬骄,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人鹦聪,你說我怎么就攤上這事德玫。” “怎么了椎麦?”我有些...
    開封第一講書人閱讀 157,490評論 0 348
  • 文/不壞的土叔 我叫張陵宰僧,是天一觀的道長。 經常有香客問我观挎,道長琴儿,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,521評論 1 284
  • 正文 為了忘掉前任嘁捷,我火速辦了婚禮造成,結果婚禮上,老公的妹妹穿的比我還像新娘雄嚣。我一直安慰自己晒屎,他們只是感情好,可當我...
    茶點故事閱讀 65,627評論 6 386
  • 文/花漫 我一把揭開白布缓升。 她就那樣靜靜地躺著鼓鲁,像睡著了一般。 火紅的嫁衣襯著肌膚如雪港谊。 梳的紋絲不亂的頭發(fā)上骇吭,一...
    開封第一講書人閱讀 49,842評論 1 290
  • 那天,我揣著相機與錄音歧寺,去河邊找鬼燥狰。 笑死,一個胖子當著我的面吹牛斜筐,可吹牛的內容都是我干的龙致。 我是一名探鬼主播,決...
    沈念sama閱讀 38,997評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼顷链,長吁一口氣:“原來是場噩夢啊……” “哼目代!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 37,741評論 0 268
  • 序言:老撾萬榮一對情侶失蹤像啼,失蹤者是張志新(化名)和其女友劉穎俘闯,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體忽冻,經...
    沈念sama閱讀 44,203評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡真朗,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 36,534評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了僧诚。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片遮婶。...
    茶點故事閱讀 38,673評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖湖笨,靈堂內的尸體忽然破棺而出旗扑,到底是詐尸還是另有隱情,我是刑警寧澤慈省,帶...
    沈念sama閱讀 34,339評論 4 330
  • 正文 年R本政府宣布臀防,位于F島的核電站,受9級特大地震影響边败,放射性物質發(fā)生泄漏袱衷。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,955評論 3 313
  • 文/蒙蒙 一笑窜、第九天 我趴在偏房一處隱蔽的房頂上張望致燥。 院中可真熱鬧,春花似錦排截、人聲如沸嫌蚤。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,770評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽脱吱。三九已至,卻和暖如春艳悔,著一層夾襖步出監(jiān)牢的瞬間急凰,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,000評論 1 266
  • 我被黑心中介騙來泰國打工猜年, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人疾忍。 一個月前我還...
    沈念sama閱讀 46,394評論 2 360
  • 正文 我出身青樓乔外,卻偏偏與公主長得像,于是被迫代替她去往敵國和親一罩。 傳聞我的和親對象是個殘疾皇子杨幼,可洞房花燭夜當晚...
    茶點故事閱讀 43,562評論 2 349

推薦閱讀更多精彩內容

  • 一找蜜、宏 宏的常見用法:1、常見字符串抽成宏2稳析、常見代碼抽成宏 二洗做、const 常量 翻譯 const :常數(shù),...
    艷曉閱讀 1,576評論 0 4
  • 參考:http://blog.csdn.net/annkie/article/details/9877643 一般...
    GShining閱讀 487評論 0 0
  • 在日常開發(fā)中彰居,枚舉的使用可以提升我們的代碼易讀性诚纸,一般枚舉的幾個寫法,我在此整理一下陈惰,梳理梳理自己的思路畦徘,如果有理...
    IUVO閱讀 1,343評論 1 0
  • 枚舉值: 它是一個整形(int) ,并且它不參加內存的占用和釋放 枚舉定義變量即可直接使用,不用初始化 三種類型的...
    Moker_C閱讀 470評論 0 1
  • 0、背景 在iOS6和Mac OS 10.8以后Apple引入了兩個宏來重新定義這兩個枚舉類型抬闯,實際上是將enum...
    Lovell_閱讀 215評論 0 0