0

popoverviewcontroller를 사용하여 ViewController로 돌아가려고하고 있지만 아무 일도 일어나지 않습니다. 나는 그런 식으로
이의 ViewController에서 그것을 필요로하기 때문에 내비게이션 바는 숨겨져popviewcontroller는 아무것도하지 않고 작동하지 않습니다.

UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:self.welcomeMenu]; 
nav.navigationBarHidden = YES; 
self.window.rootViewController = nav; 
nav = nil; 

, 나는 메뉴를 보여주는 해요 :
첫째,이 코드는 AppDelegate에에서는 제 1의 ViewController을로드하고있어 버튼, 다음,이 코드를 사용하고, 또 다른의 ViewController를 보여 :

SecondViewController *secView = [[SecondViewController alloc]initWithNibName:@"SecondViewController" bundle:nil]; 

[UIView beginAnimations:nil context:NULL]; 
[UIView setAnimationCurve:UIViewAnimationCurveEaseInOut]; 
[UIView setAnimationDuration:0.75]; 
[self.navigationController pushViewController:secView animated:NO]; 
[UIView setAnimationTransition:UIViewAnimationTransitionFlipFromRight forView:self.navigationController.view cache:NO]; 
[UIView commitAnimations]; 
secView = nil; 

그리고 SecondViewController로드 (그러나 회전이 작동하지 않습니다) ...
내 SecondViewController은 (코드 SplitViewController에 추가 NavigationCon과 함께

[self.navigationController popViewControllerAnimated:NO]; 

하지만 아무것도 :
그런 다음 왼쪽의 표, 오른쪽에 다른 테이블에 대한 또 다른있는 navigationController)에 대한 troller는 SecondViewController에,이 코드를 사용하여, 돌아갈 수동으로 버튼을 추가 해요 어떻게됩니까 ... self.navigationController를 인쇄 할 때 결과가 (null)이므로 문제가되는 것 같지만 self.navigationController가 null 인 이유는 무엇입니까? 그리고 올바르게 튀어 나오기 위해해야 ​​할 일은 무엇입니까?
AppDelegate 코드에서 navigationBar를 숨기지 않으면 자동으로 나타나는 backButton이 제대로 작동하지만 수동으로 수행하려는 경우 작동하지 않습니다 ...

+0

번들을 변경해보십시오 [NSBundle mainBundle] –

+0

아무것도 그래서 여전히 라인업을 – user1600801

답변

2

SecondViewController에서 분할보기 컨트롤러를로드 할 수 없습니다.

Split View Controllers를 참조하십시오

분할 뷰 컨트롤러는 항상 생성 모든 인터페이스의 루트해야합니다. 즉, 항상 UISplitViewController 개체의보기를 응용 프로그램의 창의 루트보기로 설치해야합니다. 분할보기 인터페이스의 창에는 탐색 컨트롤러, 탭 표시 줄 컨트롤러 또는 인터페이스를 구현하는 데 필요한 다른 유형의보기 컨트롤러가 포함될 수 있습니다. 분할보기 컨트롤러를 모달로 표시 할 수 없습니다. 번들 무기 호 :

+0

그래서 SecondViewController를 삭제하고, MainViewController에서 SplitViewController를 선언하고로드해야하며, 하나의 NavigationController에 SplitViewController를 추가해야합니까? – user1600801

+0

아니요, 분할보기 컨트롤러는 다른 모든보기 컨트롤러의 루트 일 수 있습니다. 네비게이션 컨트롤러에서는 사용할 수 없습니다. –

+0

오, 오케이. 이제 저는 이해합니다 ... 저는 제 패러다임을 바꿀 필요가 있다고 생각합니다. 고맙습니다 ... 내 MainViewController에서 SplitViewController를 호출하고 "self.window.rootViewController"를 변경하면 애니메이션을 추가 할 수 있습니까? – user1600801

0

탐색에 SecondViewController를 추가하지 않았습니다 컨트롤러의 viewController, self.navigationController가 null을 기록하는 이유입니다. 따라서 새로운 컨트롤러로 viewControllers 배열을 업데이트하면됩니다.

+0

을 발생하지 [self.navigationController과 pushViewController : secView 애니메이션 : NO]; 없다 그걸하지 않니? – user1600801

+0

[self.navigationController pushViewController : secView animated : NO] 이후에 [self.navigationController.viewControllers count]를 출력하고 출력이 2이기 때문에 추가되었습니다. 여전히 수동으로 ViewController를 추가하고 출력도 2입니다. ViewController를 팝업하고 싶을 때, 출력은 0이고 self.navigationController는 (null) – user1600801

+0

입니다. 죄송합니다. popViewController 메시지를보고 있었지만 푸시 라인을 알아 채지 못했습니다. 스택 그래서 self.navigationController가 null로 로깅하는 이유를 모르겠습니다. – rdelmar

관련 문제