1.先判斷uiwindow自己能不能接收事件,然後判斷點在不在當前window上
2.然後從最外面開始遍歷子控制項 以此用上面的方法進行判斷 3.
接著呼叫uiwindow的hittest方法
4.從後往前遍歷尋找最合適的view 5.
1.判斷當前控制項能否接收事件
if(self.userinteractionenabled=no||self.hidden=yes||self.alpha<=0.01)
return nil;
2.看一下點在不在控制項的上面
if(self pointinside:point withevent:)
3.從後往前遍歷 子控制項。重複的判斷上面的2步
例項**
// 因為所有的檢視類都是繼承baseview
- (uiview *)hittest:(cgpoint)point withevent:(uievent *)event
}// 迴圈結束,表示沒有比自己更合適的view
return self;
}
XMG 抽屜效果
1.比如說我建立了3個view void viewdidload 如果想要監聽乙個物件的某個屬性可以使用kvo 只要監聽的屬性一改變,就會呼叫觀察者的這個方法,通知你有新值 void observevalueforkeypath nsstring keypath ofobject id object...
長呼叫與短呼叫 呼叫門
cs裡的是乙個段選擇子 1 拆分段選擇子,查gdt表 2 該段描述符為系統描述符,s位為0,type為1100,是乙個門描述符 dpl必須為3,不然該描述符的許可權檢查過不去 3 該描述符的16到31位為另外乙個段描述符的選擇子 決定是否提權 另外乙個段描述符 必須是 段 dpl決定是否提權 長呼叫...
庫呼叫,系統呼叫
通過這個問題,可以判斷候選人是否具有豐富的程式設計經驗以及是否具有找出這類問題答案的敏銳感覺。簡明的回答是 函式庫呼叫是語言或應用程式的一部分,而系統呼叫是作業系統 的一部分。你要確保弄懂 trap 自陷 這個關鍵字的含義。系統呼叫是在作業系統核心發現乙個 trap 或中斷後進行的。函式庫呼叫 vs...