響應(yīng)鏈:
當(dāng)事件發(fā)生的時(shí)候赶盔,響應(yīng)鏈?zhǔn)紫缺话l(fā)送給第一個(gè)響應(yīng)者(往往是事件發(fā)生的視圖企锌,也就是用戶觸摸屏幕的地方)。事件將沿著響應(yīng)者鏈一直向下傳遞于未, 直到被接受并作出處理撕攒。一般來說,第一響應(yīng)這是個(gè)視圖對(duì)象或者其子類烘浦,當(dāng)其被觸摸后事件就交由它處理抖坪,如果他不處理,時(shí)間就會(huì)被傳遞給視圖控制器對(duì)象UIViewController(如果存在)谎倔,然后是它的父視圖對(duì)象(superview)柳击,以此類推知道頂層視圖。接下來會(huì)沿著頂層視圖(top view)到窗口(UIwindow 對(duì)象) 再到程序的(UIApplication對(duì)象)片习,如果整個(gè)過程都沒有響應(yīng)這個(gè)事件捌肴,則該事件被丟棄,一般情況下藕咏,在響應(yīng)鏈中只要有對(duì)象處理事件状知,事件就會(huì)被傳遞。
典型的響應(yīng)路線圖如:
First? Responser --> The Window -->The Applicationn --> App Delegate
正常的響應(yīng)者鏈流程經(jīng)常被委托打斷孽查,一個(gè)對(duì)象可能將響應(yīng)工作委托給另一個(gè)對(duì)象來完成(通常是視圖控制器viewcontroller)饥悴。