在初始化時,調(diào)用init 和-(instancetype)initWithFrame:(CGRect)frame 當frame為CGRectZe...
Block的底層原理 一省骂、Block概述 1.什么是block Block是將函數(shù)及其執(zhí)行上下文封裝起來的對象。 2.閉包 閉包 = 一個函數(shù)(...
六大設計原則 單一職責原則蚪腐、開閉原則、依賴倒置原則税朴、里氏替換原則回季、接口隔離原則家制、迪米特法則 單一職責原則 一個類只負責一件事 開閉原則 對修改關(guān)...
分類(Category) 分類是OC中的特有語法,它是表示一個指向分類的結(jié)構(gòu)體的指針泡一。原則上它只能增加方法颤殴,不能增加成員(實例)變量。其源碼組成...
RunLoop是通過內(nèi)部維護的事件循環(huán)來對事件和消息進行管理的對象 沒有消息需要處理時鼻忠,Runloop將線程控制器交給系統(tǒng)涵但,即從用戶態(tài)->內(nèi)核態(tài)...
首先咱們來看下蘋果的開發(fā)者文檔。 NSKeyValueObserving An informal protocol that objects a...
利用CAShapeLayer和貝塞爾曲線來畫一個圓環(huán)進度條帖蔓,其實很簡單矮瘟,在此只做記錄使用。 效果如下所示: 直接上代碼.h頭文件 .m實現(xiàn)文件 ...
一塑娇、什么是KVC澈侠? KVC的全稱是Key-Value Coding,翻譯成中文是 鍵值編碼钝吮,鍵值編碼是由NSKeyValueCoding非正式協(xié)...
當面對多個初始化方法時埋涧,外部調(diào)用者往往會手足無措板辽,不知道哪一個才是正確的初始化方法奇瘦,對此,蘋果提供了兩個關(guān)鍵字:NS_UNAVAILABLE 與...