每次执行segue时,UIStoryboard都会实例化新的UIViewController对象?

时间:2013-09-04 15:28:53

标签: ios uistoryboard uistoryboardsegue

我刚刚意识到使用带有UITableViewController的故事板和2个执行模态segue的静态单元来显示2个不同的UIViewControllers,实际上每次都会创建这些视图控制器的新实例,每次调用initWithCoder:方法(当然还有viewDidLoad) )。我一直以为使用了相同的实例,initWithCoder:每个视图控制器类只调用一次。

有人可以确认此行为是否正确?我没有使用任何花哨的东西,甚至没有准备好塞弗:

有没有办法避免这种情况?

1 个答案:

答案 0 :(得分:2)

这种行为是由设计'在当前版本的iOS中(我在WWDC
 13中与2名Apple工程师确认了这一点),但在未来的更新中可以更改。在使用故事板时,我无法避免它。如果您回到每个控制器的xib,您可以自己管理缓存实例。