훨씬 더 깨끗한 방법을 제안하고 싶습니다. 스토리 보드가 여러 개인 경우 유용합니다.
1. 모든 스토리 보드로 구조를 만듭니다
struct Storyboard {
static let main = "Main"
static let login = "login"
static let profile = "profile"
static let home = "home"
}
2. 이와 같은 UIStoryboard 확장을 만듭니다
extension UIStoryboard {
@nonobjc class var main: UIStoryboard {
return UIStoryboard(name: Storyboard.main, bundle: nil)
}
@nonobjc class var journey: UIStoryboard {
return UIStoryboard(name: Storyboard.login, bundle: nil)
}
@nonobjc class var quiz: UIStoryboard {
return UIStoryboard(name: Storyboard.profile, bundle: nil)
}
@nonobjc class var home: UIStoryboard {
return UIStoryboard(name: Storyboard.home, bundle: nil)
}
}
스토리 보드 식별자를 클래스 이름으로 지정하고 아래 코드를 사용하여 인스턴스화하십시오.
let loginVc = UIStoryboard.login.instantiateViewController(withIdentifier: "\(LoginViewController.self)") as! LoginViewController
;
! ;)에 대해 자세히 설명해 주시겠습니까as UIViewController
? 왜 필요한가요?