我有一个视图控制器,根据单击的按钮,底部的视图在4个不同的表视图之间交换。这些表视图位于故事板中各自独立的UITableViewController中。我像这样添加tableViews:
Tracks_TVC *tracksTVC = [[Tracks_TVC alloc] init];
tracksTVC.view.frame = _postView.frame;
tracksTVC.view.tag = kTagPostView;
[self.view addSubview:tracksTVC.view];
运行代码时出现此错误消息:
NSInternalInconsistencyException',原因:'UITableView dataSource 必须从tableView:cellForRowAtIndexPath:
返回一个单元格
我已经在单独的UITableViewController中使用所有必需的方法正确地实现了数据源,所以我很困惑为什么我收到这个错误。我唯一的想法是添加的表视图没有使用它自己的UITableViewController中的方法..?任何有关此事的帮助将不胜感激!
答案 0 :(得分:1)
您应该创建TableViewController的属性,例如 -
@property(nonatomic, strong) Tracks_TVC *tracksTVC;
现在在viewDidLoad中初始化相同的 -
-(void)viewDidLoad
{
[super viewDidLoad];
self.tracksTVC = [[Tracks_TVC alloc] init];
self.tracksTVC.view.frame = _postView.frame;
self.tracksTVC.view.tag = kTagPostView;
[self.view addSubview:self.tracksTVC.view];
}
注意:还要确保在数据源中返回单元格。