2016-07-15 6 views
1

UITableView의 배경보기로 UIView를 사용하고 UITableView의 내용 인세 트를 설정하여 사용자가 배경보기를 표시하도록 테이블보기를 아래로 스크롤 할 수 있도록하고 팬을 추가해야합니다. 배경보기에서 제스처를 드래그하여 사용자가 일부 작업을 수행 할 수있게했지만 작동하지 않는 것으로 나타났습니다.
누구나 좋은 해결책이 있습니까?UITableView 배경보기 팬 제스처

답변

1

UITableView에는 고유 한 panGestureRecognizer이 있습니다. 그래서 위아래로 스크롤을 호출합니다. 새로운 동작을 추가하는 대신이 기능을 사용해야합니다.
업데이트 :
테이블보기를 아래로 스크롤하여 배경보기를 표시하도록 설정했지만 표보기의 프레임에 있고 터치 이벤트는 테이블보기에서 처리해야합니다. 한 단어로, 응답을 결정하는 것은 프레임입니다. 해결 방법

뷰 컨트롤러에서이 작업을 수행하십시오 :

override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) { 
     if let touch = touches.first { 
      if let tableView = touch.view as? UITableView { 
       if tableView.contentOffset.y < tableView.contentInset.top { 
        let point = touch.locationInView(backgroundView) 
        backgroundView.hitTest(point, withEvent: event) 
       } 
      } 
     } 
    } 
+0

죄송합니다, 내 설명 오류가 나는 배경보기에 팬 제스처를 추가, 나는 사용자가 필요로하는 배경보기에 작업을한다. – childrenOurFuture

+0

@childrenOurFuture 내 대답이 업데이트되었습니다. – Lumialxk

+0

나는 네가 한 말을 안다. 내 관심사는 그것에 관한 것이 아니며, 나는 그것의 반응 사슬을 어떻게 조절할 것인가에 중점을 둔다. 백그라운드 뷰의 제스처로 하여금 사용자의 조작을 가능하게하는 방법. – childrenOurFuture

관련 문제