在初始化時(shí),調(diào)用init 和-(instancetype)initWithFrame:(CGRect)frame 當(dāng)frame為CGRectZe...
Block的底層原理 一、Block概述 1.什么是block Block是將函數(shù)及其執(zhí)行上下文封裝起來(lái)的對(duì)象矮瘟。 2.閉包 閉包 = 一個(gè)函數(shù)(...
六大設(shè)計(jì)原則 單一職責(zé)原則钠糊、開(kāi)閉原則俺泣、依賴倒置原則茧泪、里氏替換原則炼列、接口隔離原則仑撞、迪米特法則 單一職責(zé)原則 一個(gè)類只負(fù)責(zé)一件事 開(kāi)閉原則 對(duì)修改關(guān)...
分類(Category) 分類是OC中的特有語(yǔ)法赤兴,它是表示一個(gè)指向分類的結(jié)構(gòu)體的指針。原則上它只能增加方法隧哮,不能增加成員(實(shí)例)變量桶良。其源碼組成...
RunLoop是通過(guò)內(nèi)部維護(hù)的事件循環(huán)來(lái)對(duì)事件和消息進(jìn)行管理的對(duì)象 沒(méi)有消息需要處理時(shí),Runloop將線程控制器交給系統(tǒng)沮翔,即從用戶態(tài)->內(nèi)核態(tài)...
首先咱們來(lái)看下蘋(píng)果的開(kāi)發(fā)者文檔陨帆。 NSKeyValueObserving An informal protocol that objects a...
利用CAShapeLayer和貝塞爾曲線來(lái)畫(huà)一個(gè)圓環(huán)進(jìn)度條,其實(shí)很簡(jiǎn)單,在此只做記錄使用疲牵。 效果如下所示: 直接上代碼.h頭文件 .m實(shí)現(xiàn)文件 ...
一承二、什么是KVC? KVC的全稱是Key-Value Coding纲爸,翻譯成中文是 鍵值編碼亥鸠,鍵值編碼是由NSKeyValueCoding非正式協(xié)...
當(dāng)面對(duì)多個(gè)初始化方法時(shí),外部調(diào)用者往往會(huì)手足無(wú)措缩焦,不知道哪一個(gè)才是正確的初始化方法读虏,對(duì)此,蘋(píng)果提供了兩個(gè)關(guān)鍵字:NS_UNAVAILABLE 與...