iOS 事件的主要由:響應(yīng)連 和 傳遞鏈 構(gòu)成。一般事件先通過傳遞鏈,傳遞下去。響應(yīng)鏈,如果上層不能響應(yīng),那么一層一層通過響應(yīng)鏈找到能響應(yīng)的UIResponse。 響應(yīng)鏈:由...
iOS 事件的主要由:響應(yīng)連 和 傳遞鏈 構(gòu)成。一般事件先通過傳遞鏈,傳遞下去。響應(yīng)鏈,如果上層不能響應(yīng),那么一層一層通過響應(yīng)鏈找到能響應(yīng)的UIResponse。 響應(yīng)鏈:由...
目錄 快速檢測Mac中各個環(huán)境前言【一】安裝RVM【二】安裝Homebrew【三】安裝Ruby環(huán)境【四】切換Source源,替換Ruby源【五】升級Gem【六】安裝Cocoa...
在使用原生的 AVFoundation 框架實現(xiàn)二維碼掃描的時候, 需要注意一下兩個方面: 啟動相機的卡頓問題;有效掃描區(qū)域的問題; 本文主要針對這兩個問題進行講解. 1. ...
demo 前言 關(guān)于二維碼的有效區(qū)域,在開發(fā)中遇到的人可能并不是很多,大多數(shù)情況都是直接用第三方,但是當(dāng)你真正自己去嘗試寫的時候,你會發(fā)現(xiàn)二維碼的有效區(qū)域是一個很令人捉摸不定...
二維碼掃描在App中很常見的功能,之前都是用三方工具Zing、ZBar。后來Apple的AVFoundation也支持二維碼掃描、生成,而且效率比三方庫還要高。我把它封裝成一...
一、蘋果審核新規(guī) 背景:從2020年四月起提交至App Store的app,必須使用Xcode的Storyboard搭建啟動頁。在這條新規(guī)下,我們就不能使用原來的Assets...
最近在群里看到有人遇到了更新到iOS15.4版本并且設(shè)置時間為12小時制后,使用dateformatter解析出的時間格式出錯的問題。代碼如下: 輸出結(jié)果: 可以看到雖然設(shè)置...
在 Swift 中,map filter reduce 等高階函數(shù)的存在可以讓我們更快的處理數(shù)據(jù)。在OC中實現(xiàn)對應(yīng)方法: map:處理數(shù)組中的每個元素,并返回一個新的結(jié)果數(shù)組...
本篇文章采用的源碼是objc4-781版本 使用atomic一定是線程安全的嗎? atomic不是絕對的線程安全。atomic的本意是指屬性的存取方法是線程安全的,并不保證整...
tableview 是開發(fā)中項目中常用的視圖控件,并且是重復(fù)的使用,布局類似,只是數(shù)據(jù)源及Cell更改,所以會出現(xiàn)很多重復(fù)的內(nèi)容,并且即使新建一個基礎(chǔ)的列表也要重復(fù)這些固定邏...
面試系列:iOS面試全解1:基礎(chǔ)/內(nèi)存管理/Block/GCD[http://www.itdecent.cn/p/8cdd64c84ab6]iOS面試全解2:Runloop...
block的本質(zhì)是對象、函數(shù)、結(jié)構(gòu)體。 一、block 定義 block:帶有自動變量的匿名函數(shù)。 匿名函數(shù):沒有函數(shù)名的函數(shù),一對{}包裹的內(nèi)容是匿名函數(shù)的作用域。 自動變...
iOS程序的內(nèi)存布局 Tagged Pointer 從64bit開始,iOS引入了Tagged Pointer技術(shù),用于優(yōu)化NSNumber、NSDate、NSString等...
執(zhí)行動畫過程中暫停和繼續(xù)上次動畫的狀態(tài)繼續(xù)執(zhí)行動畫,需要用到layer.speed 和 layer.timeOffset, layer.beginTime.基本做法就是記錄暫...
最近我們有一個 DeepLink 的需求 用的是 Branch, 在這個過程中自然會涉及到 Universal Links 和 Custom URL Schem,在此進行筆記...
前言 隱藏細(xì)節(jié),暴露抽象。 作為一名有追求的工程師,我們希望代碼能夠在版本迭代中逐漸優(yōu)化而不是劣化;同時也會學(xué)習(xí)掌握更多的技巧和工具,去更好的設(shè)計、實現(xiàn)和組織代碼。偶然看到一...
前言 眾所周知,現(xiàn)在App的競爭已經(jīng)到了用戶體驗為王,質(zhì)量為上的白熱化階段。用戶們都是很挑剔的。如果一個公司的推廣團隊好不容易砸了重金推廣了一個APP,好不容易有了一些用戶,...