2013-03-30 4 views
3

ECSliding 프레임 워크를 사용하여 응용 프로그램을 개발하고 있습니다. UItableViewControllertopViewController으로 추가 할 때까지 모든 것이 잘 진행되고있었습니다. 정적 테이블보기를 스크롤하는 중 오류가 발생했습니다. 문제가있는 부분을 확인할 수는 있지만 문제를 해결하는 방법을 알지 못합니다. viewDidLoad 메서드에서 선언 된 벨로우즈 명령을 삭제하면 내 UITableView이 정상적으로 스크롤되기 시작합니다.ECSlidingViewController with static UITableView

[self.view addGestureRecognizer:self.slidingViewController.panGesture]; 

코드 내가 다른 게시물에 다른 비슷한 질문을 찾았지만, 거기에 한 ECSlidingViewController

에서 topViewController

self.topViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"Driver"]; 

topViewController로 속성을있는 UITableViewController입니다 설정하는 데 사용, 사람이었다 UINavigationControllertopViewController으로 사용하십시오.

누군가가 나를 도와 줄 수 있다면 알려주십시오.

감사합니다. 마르코스.

+0

빠른 조언 담당자는 tableviewcontroller를 상위보기로 추가하는 데 사용한 코드를 게시 해 보시기 바랍니다. 또한 충돌 로그 또는 오류 보고서를 통해 도움을 드릴 수 있습니다. –

+0

@ CodeMonkey 빠른 답장과 조언을 주셔서 감사합니다. UItableViewController를 topViewController로 설정하는 데 사용 된 코드를 추가했습니다. 로그가 없으면 유일한 문제는 UITable View가 스크롤하지 않는다는 것입니다. – vilelam

+0

아직 도서관을 보지 못했지만 우리 IB와 관련된 것이있을 가능성이 큽니다. IB에서 스크롤보기의 속성을 확인하십시오. 내가 시간을 좀 잡으면 컨트롤을 다운로드하고 테이블 뷰를 상위 뷰로 연결하고 어떤 일이 일어나는 지 봅니다. –

답변

1

나는 당신이 당신의 문제를 풀 었음을 알지만 다른 사람들도이 해결책을 찾고있다. 그래서 나는 이것에 대한 약간의 정보를 줄 것이다.

여기에서 문제는 팬 제스처를 UITableView 하위 클래스에 추가하면 스크롤하는 데 사용되는 현재 제스처가 엉망입니다. 당신이 그것을 두들겨 패 때 당신은 더 이상 당신이 무엇인지 모릅니다. 그리고 당신은 일관성없는 행동 (또는 당신이 원하지 않는 행동)으로 끝날 수 있습니다.


ONE :

- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer 
{ 
    return TRUE; 
} 

: 당신이 UIGestureRecognizerDelegate 될 경우

당신이 방법을 구현할 수

은 실제 필요에 보류중인 작업을 할 수 있습니다 다른 솔루션의 몇 가지가 있습니다 이렇게하면 여러 제스처를들을 수 있습니다. 그냥 만들 당신이 self

TWO에 제스처의 대리자를 설정해야합니다 : 분명히

UISwipeGestureRecognizer* swipe; 

    swipe = [[[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(handleSwipeL)] autorelease]; 
    swipe.direction = UISwipeGestureRecognizerDirectionLeft; 
    [view addGestureRecognizer:swipe]; 

    swipe = [[[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(handleSwipeR)] autorelease]; 
    swipe.direction = UISwipeGestureRecognizerDirectionRight; // default 
    [view addGestureRecognizer:swipe]; 

: 당신은 당신이 스크롤 문제가 중단 할 수 있습니다 구현하는 새로운 제스처를 원하는 방향으로 지정하면


이것은 스 와이프를 사용하지만 쉽게 수정할 수 있습니다. 이는 수직 동작에 대해 걱정할 필요가 없으며 테이블이 기본 동작을 계속하도록 허용 할 수 있음을 나타냅니다. 그래도 하나의 대리자 메서드를 구현해야 여러 동작을 수신하는지 확인할 수 있습니다.