Segue без StoryBoard - PullRequest
       13

Segue без StoryBoard

0 голосов
/ 26 сентября 2018

Я пытаюсь создать приложение, которое будет иметь кнопку «Домой» на каждом просмотре, но я ищу способ перейти на главный экран, нажав эту кнопку, без создания «физической» ссылки для каждого экрана наStoryBoard на домашний экран.

Я пытаюсь использовать этот код:

@IBAction func btnGoInicio(_ sender: Any) {
    let page = MainVC()
    present(page, animated: true, completion: nil)
}

Но это сбой на черном экране, кто-нибудь знает, как я могу это сделать?Заранее спасибо!

Ответы [ 2 ]

0 голосов
/ 27 сентября 2018

Вы должны создать экземпляр viewController из раскадровки следующим образом:

@IBAction func btnGoInicio(_ sender: Any) {

     let storyboard = UIStoryboard(name: "Main", bundle: nil) // If you have other storyboard instead of Main, use it

     if let page=self.storyboard?.instantiateViewControllerWithIdentifier("YOU_IDENTIFIER") as! MainVC{ 
//You MUST SET THE VIEW CONTROLLER IDENTIFIER "YOU_IDENTIFIER" FROM INSPECTOR INTO STORYBOARD
        self.present(page, animated: true, completion: nil)
    }

}
0 голосов
/ 26 сентября 2018

Этот метод следует использовать при использовании сегментов в вашем коде

func performSegue(withIdentifier identifier: String, 
           sender: Any?)

Убедитесь, что сегменты настроены с идентификаторами в раскадровке, чтобы их можно было вызывать позже, в параметре идентификаторов.

...