这个问题已被多次询问,但即使在尝试了大部分可能的事情后,我仍然无法找到适合我的解决方案。 这是错误消息。
警告:尝试出现在< 0x7f8f29e17590>其视图不在窗口层次结构中!
注意:我没有使用任何导航控制器。
我只是以模态方式呈现视图控制器,并且我有一个按钮用于linkedIn注册。但每次单击“确认”按钮时,都会出现此错误,但我无法看到新的linkedIn对话框,尽管它在其他类中工作正常。
大多数解决方案建议在viewDidAppear中处理按钮点击已尝试过,但它不起作用。
我正在使用此代码打开linkedIn注册表单
linkedinHelper.authorizeSuccess({ [unowned self] (lsToken) -> Void in
print("success lsToken: \(lsToken)")
self.requestProfile()
}, error: { [unowned self] (error) -> Void in
print("Encounter error: \(error.localizedDescription)")
}, cancel: { [unowned self] () -> Void in
print("User Cancelled!")
})
答案 0 :(得分:6)
我已经解决了问题,主要问题正是它所说的视图不在视图层次结构中。为了解决此问题,我们需要使用appDelegate对象将根视图控制器设置为当前视图控制器。因此,视图现在位于视图层次结构中,并且能够呈现更多视图。这是代码
let initialViewController = UIStoryboard(name: "Main", bundle:nil).instantiateInitialViewController() as UIViewController
let appDelegate = (UIApplication.sharedApplication().delegate as AppDelegate)
appDelegate.window?.rootViewController = initialViewController
请阅读此内容以获取更多信息。 https://stackoverflow.com/a/27608804/5123516