2012-09-08 3 views
0

나는보기 컨트롤러를 두 번째 컨트롤러를 통해 두 번째 컨트롤러를 통해 처음부터 세 번째로 segue해야 볼 수 있습니다. 제 2 제어부가 수행 버튼을 갖는 제어부 SEGUE 2 - 내가 초 컨트롤러의 viewDidLoad에네비게이션 컨트롤러보기 위로 점프 컨트롤러

[self performSegueWithIdentifier:@"addItem" sender:self ]; 

시도했다 3.

> 컨트롤러. 하지만 세 번째 컨트롤러에 연결하는 대신 알 수없는 컨트롤러로 연결됩니다. 터미널에서 말하는 메시지와 함께. 중첩 된 푸시 애니메이션으로 인해 탐색 모음이 손상 될 수 있습니다. 예기치 않은 상태에서 탐색 전환 완료. 탐색 바 하위 뷰 트리가 손상 될 수 있습니다. 그 알 수없는 컨트롤러에서 뒤로 버튼을 누르면 내 의도 된 대상 (세 번째 컨트롤러)으로 돌아오고 거기에서 제대로 작동합니다.

+0

왜 컨트롤러 1 -> 컨트롤러 3을 직접 이동하지 않습니까? – Neo

+0

내가 2 번 컨트롤러로 가야하는 뒤로 버튼을 부를 때 두 번째 컨트롤러 사촌을 통과해야합니다. 두 번째 버튼에는 세 번째 버튼이 있습니다. 그래서 만약 내가 터지는 대신 3에서 2로 밀면 객체를 쌓을 무한 루프가 생성됩니다. – shashank

+0

당신이 언급했듯이 "제 2 컨트롤러 cuz를 통해 갈 필요가 있습니다. 제 2의 버튼으로 가야합니다."코드는 잘 동작하지만, 다시 버튼을 클릭하면 viewWillAppear가 다시 호출됩니다. 세 번째 컨트롤러에서 세그를 다시 수행 할 컨트롤러 – Neo

답변

0

답변이 없습니다. 이를 위해 하나의 애니메이션을 '아니요'로 설정해야합니다.

pushViewController: animated:NO . 
This prevents nested push animation 
관련 문제