響應視圖外點擊范圍的子試圖

重寫- (UIView*)hitTest:(CGPoint)point withEvent:(UIEvent*)event,返回你想響應的點擊視圖

- (UIView*)hitTest:(CGPoint)point withEvent:(UIEvent*)event {

UIView*view = [super hitTest:pointwith Event:event];

if(view ==nil) {

for(UIView*subView in self.subviews) {

CGPoint tp = [subView convertPoint:pointfromView:self];

if(CGRectContainsPoint(subView.bounds, tp) && !subView.hidden) {

view = subView;

}

}

}

returnview;

}

注意對隱藏數據的判斷,之前直接粘用網上的代碼,沒有對視圖的隱藏進行判斷,導致視圖隱藏仍然可以響應點擊。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容