- (uiview *)hittest:(cgpoint)point withevent:(uievent *)event
// 1.2能,再接著判斷觸控點是否在自己內部
// 2.再判斷手指觸控點是否在自己內部
// 不在:返回nil
// 2.1 轉換點的座標
if (![self
pointinside:point withevent:event])
// 3.如果以上兩步成立,從後往前的遍歷自己的子控制項,看是否滿足以上兩個條件
nsintegercount =
self
.subviews.count;
for (nsinteger i = count - 1; i >=0; i--)
}// 4.如果子控制項不滿足的話,說明沒有找到合適的view處理事件,那麼就返回自己
return self; }
- (void)touchesbegan:(nsset
*)touches withevent:(uievent *)event
@end
LinkedList add方法底層實現
linkedlist底層是通過雙向鍊錶實現的。linkedlist 為空建構函式如下 可以看到,在linkedlist裡定義了乙個transient 成員變數header,其為entry型別。entry型別即為雙向鍊錶中的乙個節點或者叫元素,每個元素由三部分組成,指向前乙個節點的引用 c語言裡叫指標...
String操作方法底層實現!!!
以下 純屬個人寫著玩。為了加深理解和熟悉字串提供的方法的思路。但是我發現我寫完之後還是忘了。沒啥鳥用。分享給大家指點。大家說如果面試的話,讓面試者寫乙個字串底層方法實現思路。是否能快速寫出來。charat 方法 功能 返回指定位置的字元 引數 傳遞乙個下標 官方使用 var str abcdefg ...
對映Map的底層方法實現
字典 public inte ce mapprivate class node public node k key public node public string tostring private node dummyhead private int size public linkedlist...