面試 iOS 開(kāi)發(fā)時(shí)可以問(wèn)的一些問(wèn)題 --- 知識(shí)性問(wèn)題篇

知識(shí)性問(wèn)題

  • 什么是響應(yīng)鏈律秃,它是怎么工作的拧烦?
  • 如何訪問(wèn)并修改一個(gè)類(lèi)的私有屬性佑刷?
  • iOS Extension 是什么莉擒?能列舉幾個(gè)常用的 Extension 么?
  • 如何把一個(gè)包含自定義對(duì)象的數(shù)組序列化到磁盤(pán)瘫絮?
  • Apple Pay 是什么涨冀?它的大概工作流程是怎樣的?
  • iOS 的沙盒目錄結(jié)構(gòu)是怎樣的麦萤? App Bundle 里面都有什么鹿鳖?
  • iOS 的簽名機(jī)制大概是怎樣的扁眯?
  • iOS 7的多任務(wù)添加了哪兩個(gè)新的 API? 各自的使用場(chǎng)景是什么?
  • Objective-C 的 class 是如何實(shí)現(xiàn)的翅帜?Selector 是如何被轉(zhuǎn)化為 C 語(yǔ)言的函數(shù)調(diào)用的姻檀?
  • UIScrollView 大概是如何實(shí)現(xiàn)的,它是如何捕捉涝滴、響應(yīng)手勢(shì)的绣版?
  • Objective-C 如何對(duì)已有的方法,添加自己的功能代碼以實(shí)現(xiàn)類(lèi)似記錄日志這樣的功能歼疮?
  • +load+initialize 的區(qū)別是什么杂抽?
  • 如何讓 Category 支持屬性?
  • NSOperation 相比于 GCD 有哪些優(yōu)勢(shì)韩脏?
  • strong / weak / unsafe_unretained 的區(qū)別缩麸?
  • 如何為 Class 定義一個(gè)對(duì)外只讀對(duì)內(nèi)可讀寫(xiě)的屬性?
  • Objective-C 中,meta-class 指的是什么赡矢?
  • UIViewCALayer 之間的關(guān)系杭朱?
  • +[UIView animateWithDuration:animations:completion:] 內(nèi)部大概是如何實(shí)現(xiàn)的?
  • 什么時(shí)候會(huì)發(fā)生「隱式動(dòng)畫(huà)」济竹?
  • 如何處理異步的網(wǎng)絡(luò)請(qǐng)求痕檬?
  • framebounds 的區(qū)別是什么?
  • 如何把一張大圖縮小為1/4大小的縮略圖送浊?
  • 一個(gè) App 會(huì)處于哪些狀態(tài)梦谜?
  • Push Notification 是如何工作的?
  • 什么是 Runloop袭景?
  • Toll-Free Bridging 是什么唁桩?什么情況下會(huì)使用?
  • 當(dāng)系統(tǒng)出現(xiàn)內(nèi)存警告時(shí)會(huì)發(fā)生什么耸棒?
  • 什么是 Protocol荒澡,Delegate 一般是怎么用的?
  • autorelease 對(duì)象在什么情況下會(huì)被釋放与殃?
  • UIWebView 有哪些性能問(wèn)題担巩?有沒(méi)有可替代的方案。
  • 為什么 NotificationCenter 要 removeObserver? 如何實(shí)現(xiàn)自動(dòng) remove?
  • 當(dāng) TableViewCell 改變時(shí)士嚎,如何讓這些改變以動(dòng)畫(huà)的形式呈現(xiàn)堂飞?

1.什么是響應(yīng)鏈,它是怎么工作的爽篷?

響應(yīng)者對(duì)象和響應(yīng)者鏈

響應(yīng)者對(duì)象是可以響應(yīng)事件并對(duì)其進(jìn)行處理的對(duì)象. UIResponder是所有響應(yīng)者對(duì)象的基類(lèi), 它不僅為事件處理, 而且也為常見(jiàn)的響應(yīng)者行為定義編程接口. UIApplication,UIView和所有從UIView派生出來(lái)的UIKit類(lèi) (包括UIWindow) 都直接或間接地繼承自UIResponder類(lèi).

第一響應(yīng)者是應(yīng)用程序中當(dāng)前負(fù)責(zé)接收觸摸事件的響應(yīng)者對(duì)象(通常是一個(gè)UIView對(duì)象). UIWindow對(duì)象以消息的形式將事件發(fā)送給第一響應(yīng)者, 使其有機(jī)會(huì)首先處理事件. 如果第一響應(yīng)者沒(méi)有處理, 系統(tǒng)就將事件(通過(guò)消息)傳遞給響應(yīng)者鏈中的下一個(gè)響應(yīng)者, 看看它是否可以進(jìn)行處理.

響應(yīng)者鏈一系列鏈接在一起的響應(yīng)者對(duì)象, 它允許響應(yīng)者對(duì)象將處理事件的責(zé)任傳遞給其他更高級(jí)別的對(duì)象. 隨著應(yīng)用程序?qū)ふ夷軌蛱幚硎录膶?duì)象, 事件就在響應(yīng)者鏈中向上傳遞. 響應(yīng)者鏈由一系列"下一個(gè)響應(yīng)者"組成, 其順序如下:

  • 第一響應(yīng)者將事件傳遞給它的視圖控制器(如果有的話), 然后是它的父視圖.
  • 類(lèi)似的, 視圖層次中的每個(gè)后續(xù)視圖都首先傳遞給它的視圖控制器(如果有的話), 然后是它的父視圖.
  • UIWindow對(duì)象將事件傳遞給UIApplication單利對(duì)象

如果應(yīng)用程序找不到能夠處理事件的響應(yīng)者對(duì)象, 則丟棄該對(duì)象.

響應(yīng)者鏈中的所有響應(yīng)者對(duì)象都可以實(shí)現(xiàn)UIResponder的某個(gè)事件處理方法, 因此也都可以接受事件消息. 但是, 它們都不愿處理或只是部分處理某些事件. 如果是那些的話, 它們就可以將事件消息傳送給下一個(gè)響應(yīng)者.

事件的傳遞
發(fā)生觸摸事件后悴晰,系統(tǒng)會(huì)將該事件加入到一個(gè)由UIApplication管理的事件 隊(duì)列中,UIApplication會(huì)從事件隊(duì)列中取出最前面的事件,并將事件分發(fā)下去以便處理铡溪,通常漂辐,先發(fā)送事件給應(yīng)用程序的主窗口(keyWindow),主窗口會(huì)在視圖層次結(jié)構(gòu)中找到一個(gè)最合適的視圖來(lái)處理觸摸事件,但是這僅僅是整個(gè)事件處理過(guò)程的 第一步 找到合適的視圖控件后棕硫,就會(huì)調(diào)用視圖控件的touches方法來(lái)作具體的事件處理, 這些touches方法的默認(rèn)做法是將事件順著響應(yīng)者鏈條向上傳遞髓涯,將事件交給上一個(gè)響應(yīng)者進(jìn)行處理.

事件傳遞的完整過(guò)程
先將事件對(duì)象由上往下傳遞(由父控件傳遞給子控件),找到最合適的控件來(lái)處理這個(gè)事件饲帅。 調(diào)用最合適控件的touches….方法 如果調(diào)用了[super touches….];就會(huì)將事件順著響應(yīng)者鏈條往上傳遞复凳,傳遞給上一個(gè)響應(yīng)者 接著就會(huì)調(diào)用上一個(gè)響應(yīng)者的touches….方法


2,如何訪問(wèn)并修改一個(gè)類(lèi)的私有屬性?

回答在這

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末灶泵,一起剝皮案震驚了整個(gè)濱河市育八,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌赦邻,老刑警劉巖髓棋,帶你破解...
    沈念sama閱讀 221,888評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異惶洲,居然都是意外死亡按声,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,677評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門(mén)恬吕,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)签则,“玉大人,你說(shuō)我怎么就攤上這事铐料〗チ眩” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 168,386評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵钠惩,是天一觀的道長(zhǎng)柒凉。 經(jīng)常有香客問(wèn)我,道長(zhǎng)篓跛,這世上最難降的妖魔是什么膝捞? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 59,726評(píng)論 1 297
  • 正文 為了忘掉前任,我火速辦了婚禮愧沟,結(jié)果婚禮上蔬咬,老公的妹妹穿的比我還像新娘。我一直安慰自己沐寺,他們只是感情好林艘,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,729評(píng)論 6 397
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著芽丹,像睡著了一般。 火紅的嫁衣襯著肌膚如雪卜朗。 梳的紋絲不亂的頭發(fā)上拔第,一...
    開(kāi)封第一講書(shū)人閱讀 52,337評(píng)論 1 310
  • 那天咕村,我揣著相機(jī)與錄音,去河邊找鬼蚊俺。 笑死懈涛,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的泳猬。 我是一名探鬼主播批钠,決...
    沈念sama閱讀 40,902評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼得封!你這毒婦竟也來(lái)了埋心?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 39,807評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤忙上,失蹤者是張志新(化名)和其女友劉穎拷呆,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體疫粥,經(jīng)...
    沈念sama閱讀 46,349評(píng)論 1 318
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡茬斧,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,439評(píng)論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了梗逮。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片项秉。...
    茶點(diǎn)故事閱讀 40,567評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖慷彤,靈堂內(nèi)的尸體忽然破棺而出娄蔼,到底是詐尸還是另有隱情,我是刑警寧澤瞬欧,帶...
    沈念sama閱讀 36,242評(píng)論 5 350
  • 正文 年R本政府宣布贷屎,位于F島的核電站,受9級(jí)特大地震影響艘虎,放射性物質(zhì)發(fā)生泄漏唉侄。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,933評(píng)論 3 334
  • 文/蒙蒙 一野建、第九天 我趴在偏房一處隱蔽的房頂上張望属划。 院中可真熱鬧,春花似錦候生、人聲如沸同眯。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,420評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)须蜗。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間明肮,已是汗流浹背菱农。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,531評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留柿估,地道東北人循未。 一個(gè)月前我還...
    沈念sama閱讀 48,995評(píng)論 3 377
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像秫舌,于是被迫代替她去往敵國(guó)和親的妖。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,585評(píng)論 2 359

推薦閱讀更多精彩內(nèi)容