一直好奇下拉刷新類的框架是怎么實現(xiàn),這周看了star最多的MJRefresh苹粟。源碼繼承結(jié)構(gòu)清晰显晶,實現(xiàn)的較為巧妙贷岸。 1. header初始化 MJ...
layoutSubViews默認(rèn)沒有做任何事情凰盔,需要子類進(jìn)行重寫 墓卦。 系統(tǒng)在很多時候會去調(diào)用這個方法: 1.初始化不會觸發(fā)layoutSubvi...
分類就是對一個類的功能進(jìn)行擴(kuò)展倦春,讓這個類能夠適應(yīng)不同情況的需求。在實際開發(fā)中,我們都會對系統(tǒng)的一些常用類進(jìn)行擴(kuò)展,比如NSString睁本、Butt...
scrollView在iOS11新增的兩個屬性:adjustContentInset 和 contentInsetAdjustmentBehav...
DZNEmptyDataSet (github接近1萬星)是一個能夠為UITableView尿庐、UICollectionView自動添加空頁面提示...
如果我們需要一個模型,讓線程能隨時處理事件但并不退出呢堰,這種模型通常稱作Event Loop.實現(xiàn)這種模型的關(guān)鍵點在于:如何管理事件抄瑟、消息,如何讓...
已經(jīng)封裝好了皮假,拿走就能用,完整的項目已經(jīng)上傳到github上了項目地址
隊列的創(chuàng)建和獲嚷钗: 如何設(shè)計一個線程安全的字典或數(shù)組惹资? 在編碼過程中,對數(shù)組進(jìn)行多線程寫入航闺,會引起崩潰: 采用部分代碼加鎖可解決這一問題: 在實...
1.效果如下: 實現(xiàn)代碼如下: