響應事件的產(chǎn)生于與傳遞

iOS中的事件

1.觸摸事件

2.加速事件 如:搖晃手機

3. 遠程控制事件

響應者對象

在IOS中不是任何對象都能處理事件,只有繼承了UIResponer的對象才能響應事件,我們稱之為“響應者對象”

UIApplication、UIviewController、UIview都繼承與UIResponder,因此都是響應者對象,所以都能響應事件

如果發(fā)生觸摸事件,系統(tǒng)會將事件加入到UIApplication的隊列中

UIApplication會取出最先加入的事件,分發(fā)給主窗口處理,主窗口會從視圖層次中找到最合適的視圖處理觸摸事件,

注意:如果父控件不能接收事件,那么子控件也不能接收事件

如何找到做最合適的視圖處理觸摸事件呢

1.首先判斷自己能否接收觸摸事件

2.判斷觸摸點是否在自己的視圖上

3.從后遍歷自己的子控件,一直重復,如果沒有,那么自己就是最適合處理觸摸事件的控件

常見的幾種子控件不能響應事件的例子

父控件不能接收響應事件

父控件hidden屬性設置為true

父控件的alpha屬性值為0.01

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容