为什么在viewDidLoad中调用presentingViewController返回nil?

Posted syd_programming

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为什么在viewDidLoad中调用presentingViewController返回nil?相关的知识,希望对你有一定的参考价值。

ios7应用开发入门经典(第7版)p256页提到,对于modal类型的segue,可以通过presentingViewController和presentedViewController获取segue前后的controller。

但在ios8中实践发现presentingViewController返回了nil. 这是什么情况?查阅stackoverflow,得到如下答案:


When viewDidLoad is called, there is no guarantee that the view controller hierarchy is loaded in the navigation tree. Moving the logic to a later stage (for example: viewWillAppear) should resolve that issue as presentingController should be loaded by then.


http://stackoverflow.com/questions/26081661/presentingviewcontroller-is-nil-when-using-presentviewcontrolleranimatedcomple


以上是关于为什么在viewDidLoad中调用presentingViewController返回nil?的主要内容,如果未能解决你的问题,请参考以下文章

为啥“numberOrRowsInSection”在“viewDidLoad”中途被调用?

viewDidLoad 被调用两次

为什么在viewDidLoad中调用presentingViewController返回nil?

为什么在viewDidLoad中调用presentingViewController返回nil?

为啥 viewDidLoad 在 vi​​ewWillAppear 之前被调用? [复制]

为啥 UIActivityViewController 会在 Presenter 上调用 viewWillDisappear()?