public override UIView HitTest(CGPoint point, UIEvent uievent) { var yOffset = tableView.ContentOffset.Y; var baseHitTestResult = base.HitTest(point, uievent); if (yOffset >= 0 || baseHitTestResult == iconBackgroundView) { return(baseHitTestResult); } var mapY = -yOffset + tableView.Frame.Top - headerView.Frame.Height; if (point.Y <= mapY) { return(mapView.HitTest(mapView.ConvertPointFromView(point, this), uievent)); } return(base.HitTest(point, uievent)); }