2017-02-21 1 views

답변

0

두 가지 가능성. 당신이 탐색 컨트롤러를 (난 보통 할)이없는 경우, 바로 닫는 중괄호 전에이 줄을 추가 :

self.present(vc, animated:true, completion:nil) 

당신이 탐색 컨트롤러 대신이를 추가하는 경우 :

self.navigationController?.pushViewController(vc, animated: true) 

편집 : (내비게이션 컨트롤러가 있는지 여부를 디버그하기 위해)

? ~에! 그리고 당신이 그것을 실행할 때 예외를 얻으면, 네비게이션 컨트롤러는 존재하지 않습니다. 네비게이션 컨트롤러를 정의한 코드를 보여주십시오. 나는이 같은 AppDelegate에 그것을 할 것입니다 :

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool { 
     let startupVC = SomeViewController() 
     self.window! = UIWindow(frame: UIScreen.main.bounds) 
     let mainNavConn = UINavigationController(rootViewController: startupVC) 
     self.window!.rootViewController = mainNavConn 
     self.window!.backgroundColor = UIColor(red: 1.0, green: 0.0, blue: 0.5, alpha: 1.0) 
     self.window!.makeKeyAndVisible() 
     return true 
     } 
+0

네가 공유 한 코드는 navigation controller.added가 있지만 여전히보기 컨트롤러를 열지 못했습니다. –

+0

? ~에! 그리고 당신이 그것을 실행할 때 예외를 얻으면, 네비게이션 컨트롤러는 존재하지 않습니다. 네비게이션 컨트롤러를 정의한 코드를 보여주십시오. AppDelegate에서 다음과 같이하면됩니다 : – Mozahler

+0

어디서나 내비게이션 컨트롤러를 정의하지 않았습니다. –

1

당신은 실제로 스토리 보드를 통해 갈 수있다, 당신은 SEGUE 일어날 수 있도록 할 뷰 컨트롤러와의 연결을 끌어의 UIBarButtom을 마우스 오른쪽 버튼으로 클릭합니다. 보기 컨트롤러에서 클릭을 해제하자마자 인터페이스에 어떤 유형의 세그를 사용할지 묻는 팝업이 표시됩니다. 그런 다음 세부 정보 표시를 선택할 수 있습니다. 그러면 코드를 입력하지 않고도 segue를 만들 수 있습니다.

관련 문제