在程序里这样的代码是很常见的:
- (UITableView *)tableView
{
if (_tableView == nil) {
_tableView = [[UITableView alloc]initWithFrame:self.view.frame
style:UITableViewStyleGrouped];
_tableView.delegate = self;
_tableView.dataSource = self;
}
return _tableView;
}
这其实是有缺陷的, 只要在viewDidLoad之前调用过self.tableView就会导致self.view被调用, self.view被调用则会调用viewDidLoad被调用。
如果viewDidLoad里调用self.tableview,则会导致产生两份的tableView,导致reloadData无效了