ViewController里已连接的IBOutlet为什么会是nil


 今天写代码,发现在通过loadNibNamed创建一个ViewController后,调用其IBOutlet的property时竟然是nil!!

反复核对一切链接都正常,而且在ViewController内部调用这些IBOutlet都没问题,试着在viewDidLoad中加了个日志,赫然发现竟然viewDidLoad在执行完loadNibNamed后并没有执行,所以IBOutlet当然是nil了!

最后的解决方案其实很简单,就是把调用IBOutlet的property的代码放到pushViewController之后,一切就都正常了。 

原文地址:https://www.cnblogs.com/BigPolarBear/p/2377345.html