从AppDelegate中的UITabBarController模态呈现VC

时间:2018-03-30 18:14:13

标签: ios swift appdelegate presentmodalviewcontroller

每次打开应用程序时,我都会尝试从AppDelegate触发模态视图。我可以看到我的断点被击中,但模态从未显示过。我将故事板的图像包含在内,以防万一。这是一个相当简单的应用程序,现在有一个2选项卡标签栏控制器。

enter image description here

这是我在AppDelegate中触发它的代码。

let newVC = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "LoginView")
let view = window?.rootViewController as! UITabBarController
view.selectedViewController?.show(newVC, sender: nil)

1 个答案:

答案 0 :(得分:1)

似乎newVC不在标签栏的控制器数组中,并且您尝试以AppDelegate中的selectedViewController模式显示它,其中可能没有选定的视图控制器。

一种解决方案是在newVC所选视图控制器(viewDidLoad处的视图控制器)之后显示selectedIndex。如果演示必须在任何标签栏的视图控制器加载之前进行,那么您可能希望将其设置为窗口的根视图控制器,并在newVC完成其业务后将根设置为标签栏。