【发布时间】:2017-09-15 10:58:54
【问题描述】:
我在 UINavigationController 中嵌入了几个视图控制器。第一个视图控制器是登录页面。第二个视图控制器是主页。当用户已经登录时,我希望将 initialview 控制器作为第二个视图控制器。
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool
{
// Override point for customization after application launch.
if let data = Locksmith.loadDataForUserAccount(userAccount: "someString")
{
if let userAccessToken = data["accessToken"]
{
if (userAccessToken as! String) != ""
{
let initialViewController = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "HomePageViewController") as! HomePageViewController
loginResponse = LoginResponse()
loginResponse?.UserAccessToken = userAccessToken as? String
self.window = UIWindow(frame: UIScreen.main.bounds)
self.window?.rootViewController = initialViewController
self.window?.makeKeyAndVisible()
}
}
}
return true
}
问题是后续的视图控制器没有嵌入到导航控制器中。由于它没有嵌入到导航控制器中,我无法从一个视图控制器返回到另一个。
【问题讨论】:
-
您是否在 HomePageViewController 控制器的 Storyboard 中指定了 Storyboard 标识符
-
是的,我在情节提要中指定了 id
-
你能试试这个吗'UIStoryboard(name: "Main", bundle: Bundle.main)'
-
我修复了黑屏问题。问题是第二个视图控制器中的导航控制器仍然为零。@Aditya
-
太棒了..您是否将导航控制器单独嵌入到第二个 VC。
标签: swift uiviewcontroller uinavigationcontroller