0

behin 내 요구를 들어 내가 jQuery과 직접있는 UIScrollView 아래에 추가 있습니다jQuery과있는 UIScrollView

--- 홈페이지 UIView의

-------- jQuery과

----- --- UIScrollView

그래서 내 scrollview를 스크롤 할 때 내 tableview의 내용 오프셋을 변경합니다. 그것은 완벽하게 작동합니다. 하지만 셀을 선택하려고 할 때 나는 대리자 메서드를 잡을 수 없습니다 할 뭔가 특별한

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath 

거기를? 나는있는 UIScrollView의 하위 클래스와 구현하려고 : 당신이 UITapGestureRecognizer를 사용할 필요가

-(void)handleSingleTap:(UILongPressGestureRecognizer *)gestureRecognizer{ 
    CGPoint p = [gestureRecognizer locationInView:myScroll]; 
    NSIndexPath *indexPath = [myTable indexPathForRowAtPoint:p]; 
    [myTable selectRowAtIndexPath:indexPath animated:NO scrollPosition:UITableViewScrollPositionNone]; 
    [self tableView:myTable didSelectRowAtIndexPath:indexPath]; 
} 

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event 

그것은 작동하지만 내가있는 UIScrollView를 스크롤 할 수 없습니다 ...

+0

스크롤보기가 테이블보기를 덮고 있기 때문에 모든 터치 이벤트를 잡는 중입니다. –

+0

그렇기 때문에 그 아래에있는보기에 터치 이벤트를 전송하는 방법이 있는지 알고 싶습니다. – Pete

+0

아마도 모든 탭 이벤트를 tableview로 전달하고 다른 모든 터치 이벤트를 uiscrollview로 유지해야합니다. , 지금 당신은 테이블 뷰에 모든 것을 warding하기 위해 - (void) touchesBegan : (NSSet *)은 withEvent : (UIEvent *) 이벤트를 건다. 이 기능을 구현할 수도 있지만 논리를 검토하십시오. 당신이하고있는 일은 적절하지 않습니다. 당신이 원하는 것을 얻기위한 또 다른 방법이있을 것입니다. –

답변

2

이 시도 ...

UITapGestureRecognizer *tpgr = [[UITapGestureRecognizer alloc] 
           initWithTarget:self action:@selector(handleSingleTap:)]; 
tpgr.numberOfTapsRequired = 1; 
[myScroll addGestureRecognizer:tpgr]; 
+0

좋은 답변이며 다음 링크를 통해 완료했습니다. http://stackoverflow.com/questions/7667151/automatically-cell-selected-tableview. selectRowAtIndexPath 메서드는 결코 tableView 대리자 메서드를 호출하지 않습니다. Thx 팁 : – Pete

+0

그래, 내 편집을 확인, – Aziz

+0

당신이 제스처에 대의원이 필요 왜 이해가 안 돼 – Pete