2013-09-02 2 views
3

보기 컨트롤러를 스태킹하지 않고 탐색 컨트롤러에 밀어 넣을 방법이 있습니까?스태킹없이보기 컨트롤러 밀어 넣기

구인 동작 (스택 표현)

[VC1은 [VC2] -> VC2로부터 푸시 VC3는 -> [VC1은 [VC3]

+0

나는 그것이 대체 불리는 것이라고 생각한다. –

답변

6

네 단지 애니메이션없이 (이전에 다른 하나를 나타 이 같은이 일) :

[navController popViewControllerAnimated:NO] 
[navController pushViewController:VC3 animated:YES] 

또는 더 일반적이며 옵션 2, 갈은 :

NSArray *newControllers = @[VC1, VC3]; 
[navController setViewControllers:newControllers animated:YES]; 
다음 viewControllers 속성 바꾸기

또는 ...

NSArray *newControllers = @[navController.viewControllers[0], VC3]; 
[navController setViewControllers:newControllers animated:YES]; 
1

내가 UINavigationController가의 방법의 사용을 만들 것입니다 :

- (void)setViewControllers:(NSArray *)viewControllers animated:(BOOL)animated 

이 작업을 수행 할 수있는 그런 방법 :

UINavigationController *navigationController = [self navigationController]; 
[navigationController setViewControllers:@[navigationController.viewControllers[0], VC3] animated:YES]; 

이 당신에게 밀어 넣기 애니메이션을 줄 것이다 새로운 뷰 컨트롤러 (VC3).

관련 문제