iOS常用設(shè)計模式總結(jié)
設(shè)計模式大概分成三類:
1.創(chuàng)建型:單例設(shè)計模式、抽象工廠設(shè)計模式
2.結(jié)構(gòu)型:MVC 模式、裝飾器模式、適配器模式、外觀模式、組合模式
3.行為型:責任鏈設(shè)計模式、觀察者設(shè)計模式,備忘錄設(shè)計模式、命令設(shè)計模式
iOS傳值方式總結(jié)
1. 屬性傳值
2. 委托Delegate傳值
3. 通知NSNotification傳值
4. block傳值
5. 單例傳值
6. runtime動態(tài)綁定傳值
有時候,在同一個類里,方法之間傳值,我們可以采用runtime動態(tài)綁定的方法
動態(tài)綁定
// 第一個參數(shù):給哪個對象添加關(guān)聯(lián)
// 第二個參數(shù):關(guān)聯(lián)的key,通過這個key獲取
// 第三個參數(shù):關(guān)聯(lián)的value
// 第四個參數(shù):關(guān)聯(lián)的策略
objc_setAssociatedObject(self, key, name, OBJC_ASSOCIATION_RETAIN_NONATOMIC);
動態(tài)取值
objc_getAssociatedObject(self, key);
實例: Runtime動態(tài)綁定傳值
http://jingyan.baidu.com/article/48b558e32487bf7f38c09ab5.html
一行代碼封裝weakself
FLEXFileBrowserTableViewController *__weak weakSelf = self;