1. Objective-C 的消息派發(fā) Objective-C 是動態(tài)語言,所有的消息都是在 Runtime 進行派發(fā)的 1.1. objc_msgSend ?最底層的轉(zhuǎn)發(fā)...
作者:敖志敏本文為原創(chuàng)文章,轉(zhuǎn)載請注明作者及出處 國內(nèi)移動網(wǎng)絡(luò)環(huán)境非常復(fù)雜,WIFI、4G、3G、2.5G(Edge)、2G 等多種移動網(wǎng)絡(luò)并存,用戶的網(wǎng)絡(luò)可能會在 WIFI...
問題:在UITableViewCell 中點擊自定義View 本來想在touchesBegan和touchesEnd中各觸發(fā)一次繪制來模擬點擊高亮的效果,但只要是快速點擊就無...
最近公司有需求,客戶端給H5傳參, iOS這邊用的wkwebView. 解決方法: 1. 自定義一個webview, 但是有個問題, 只有在第一次請求的時候才能添加成功 2....
最近在項目里由于電信那邊發(fā)生dns發(fā)生域名劫持,因此需要手動將URL請求的域名重定向到指定的IP地址,但是由于請求可能是通過NSURLConnection,NSURLSess...
******科普片** 1、DNS劫持的危害 不知道大家有沒有發(fā)現(xiàn)這樣一個現(xiàn)象,在打開一些網(wǎng)頁的時候會彈出一些與所瀏覽網(wǎng)頁不相關(guān)的內(nèi)容比如這樣奇(se)怪(qing)的東西 ...
出現(xiàn)這個錯誤的原因是手機的緩存了不正確的簽名數(shù)據(jù),解決方案: 用同樣的bundle ID 項目Edit Scheme -> Executable > Ask On Launc...
Block在iOS開發(fā)中的用途非常廣,今天我們就來一起探索一下Block的底層結(jié)構(gòu)。 1. Block的底層結(jié)構(gòu) 下面是一個沒有參數(shù)和返回值的簡單的Block: 為了探索Bl...
在iOS開發(fā)中,為了提升用戶體驗,我們通常會將操作耗時的操作放在主線程之外的線程進行處理。對于正常的簡單操作,我們更多的是選擇代碼更少的GCD,讓我們專注于自己的業(yè)務(wù)邏輯開發(fā)...
我們常常會延遲某件任務(wù)的執(zhí)行,或者讓某件任務(wù)周期性的執(zhí)行。然后也會在某些時候需要取消掉之前延遲執(zhí)行的任務(wù)。 延遲操作的方案一般有三種: 1.NSObject的方法: 2.使用...
前言 在開發(fā)中我們經(jīng)常會遇到使用計時器的情況,例如圖片輪播,進度條的繪制等就是比較常見的應(yīng)用場景.常用的計時器有CADisplayLink和NSTimer,這一章我們來講解下...
最近在處理一個屏幕截圖的crash的時候,遇到一些問題,看了很多關(guān)于屏幕截圖的方法,這里結(jié)合crash說下屏幕截圖。 看了很多截屏的方法,如下兩個最為簡單明了: 使用系統(tǒng)自帶...
下圖是iOS系統(tǒng)為一個APP分配的內(nèi)存,如下: 內(nèi)存分類(RAM、ROM) RAM:運行內(nèi)存,不能掉電儲存; ROM:儲存性內(nèi)存,可以掉電儲存,例如:內(nèi)存卡,flash; R...
當(dāng)我們的WebView不顯示在最高層的時候,例如push了一個新的ViewController或者pop掉了當(dāng)前的ViewController以后,常常我們需要停止音視頻的播...
看 enumerateObjectsWithOptions: usingBlock: 實現(xiàn),usingBlock 和 NSEnumerationReverse 也是用的 c 數(shù)組 + for,沒有方法調(diào)用的開銷,為啥比 for 遍歷方式慢呢
Objective-C 數(shù)組遍歷的性能及原理數(shù)組的遍歷,這個話題貌似沒什么好探究的,該怎么遍歷就怎么遍歷唄!但是如果要回答這些問題:OC數(shù)組有哪幾種遍歷方式?哪種方式效率最高?為什么?各種遍歷方式的內(nèi)部實現(xiàn)是怎么樣的?...
WKWebView是在Apple的WWDC 2014隨iOS 8和OS X 10.10出來的,是為了解決UIWebView加載速度慢、占用內(nèi)存大的問題。 使用UIWebVie...
第一次使用UIMenuController,遇見一些問題,記錄如下。 概念 UIMenuController即菜單控制器,是一個單例對象,用來復(fù)制,粘貼,刪除等內(nèi)容的操作。 ...