2017-05-12 9 views
0

스토리 보드를 만들었습니다. 첫 번째 화면은 LaunchView (LaunchViewController라는 사용자 정의 UIViewController)이고 다음 화면은 SampleTabViewController라는 사용자 정의 UITabBarController입니다.iOS swift - 프로그래밍 방식으로 다음 맞춤형 UITabBarController로 이동

LaunchViewController에서 2 초가 지나면 자동으로 SampleTabViewController로 이동하려고합니다.

그러나 내가 발견 한 일부 샘플은 사용자 지정 UIViewController에서 사용자 지정 UIViewController 수 있습니다.

이미 'SampleTabViewController'를 스토리 보드의 'SampleTabViewController'와 연결된 화면에 설정했습니다.

여기 내 코드입니다. "(: 사실, 완료 : 무기 호 CareGiverViewController(), 애니메이션) self.presentViewController"을

class LaunchViewController: UIViewController { 

override func viewDidLoad() { 
    super.viewDidLoad() 

    // Do any additional setup after loading the view. 
    print("LaunchViewController is initialized"); 

    let time = dispatch_time(dispatch_time_t(DISPATCH_TIME_NOW), 2 * Int64(NSEC_PER_SEC)) 
    dispatch_after(time, dispatch_get_main_queue()) { 
     // Put your code which should be executed with a delay here 

     let storyboard = UIStoryboard(name: "Main", bundle: nil) 
     let controller = storyboard.instantiateViewControllerWithIdentifier("sampleTabViewController") 


     self.navigationController.pushViewController(controller, animated: true) 

    } 
} 

나는 시도했다. 작동하지만 다음 화면이 비어 있습니다.

방금 ​​스위프트로 iOS 앱을 배우기 시작했습니다.

감사합니다.

+0

은 LaunchViewController는 네비게이션 컨트롤러에 포함되어 있습니까? – DonMag

답변

1

TabbarViewController를 rootViewController로 설정하십시오.

당신의 푸시의 ViewController 라인을 교체 :

let mainStoryboard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil) 
let controller = mainStoryboard.instantiateViewController(withIdentifier: "sampleTabViewController") as! UITabBarController 
UIApplication.shared.keyWindow?.rootViewController = controller 
+0

답변 해 주셔서 감사합니다. 하지만 "rootViewController로 TabbarViewController를 설정하십시오"라는 것은 무엇을 의미합니까? 스토리 보드에서 뭔가를 바꿔야합니까? – user826323

+0

아니요.이 코드를 LaunchViewController에 넣고 확인하십시오. – KKRocks

+0

rootViewController를 설정하지 않았습니다. 방금이 코드를 사용했습니다. 그것은 작동합니다. let mainStoryboard : UIStoryboard = UIStoryboard (이름 : "Main", 번들 : nil) 컨트롤러를 mainStoryboard.instantiateViewControllerWithIdentifier ("careGiverViewController")로 설정합니다. UITabBarController UIApplication.sharedApplication() .keyWindow ?rootViewController = controller 그러나 애니메이션을 어떻게 추가해야합니까? – user826323