2016-04-19 148 views
0

请帮我理解为什么表视图重新加载视图控制器启动。我通过故事板和数据源代表设置了表格的出口。我没有调用tableView reloadData方法。 所以当视图控制器启动'..numberOfRowsInSection'和其他表视图委托方法调用。UITableView刷新显示视图控制器

+0

当方法调用awakeFromNib()时,你可以重写这个方法来预设任何东西 –

+0

如何显示viewcontroller的视图?你是否提出了相同的参考?或者你每次展示它时都创建一个新的viewcontroller对象? –

回答

0

苹果文件说:

的UITableView覆盖的UIView的layoutSubviews方法,以便它,只有当你创建的UITableView或 的新实例,当您分配一个新的数据源 调用reloadData。重新加载表格视图会清除 当前状态,包括当前选择。但是,如果 显式调用reloadData,它将清除此状态,并且直接或间接调用layoutSubviews的任何后续 都不会触发重新加载。

https://developer.apple.com/library/ios/documentation/UIKit/Reference/UITableView_Class/

如果你真的不需要它重装,创建你的tableView作为一个懒惰的变量,并把它添加到一个视图programmaticaly当你需要它。