我正在尝试学习表格视图,但我遇到了麻烦。我在Storyboard中正确连接了视图委托和数据源,但是当我到达包含表视图的应用程序部分时,我收到以下运行时错误。
Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[UINavigationItem tableView:numberOfRowsInSection:]: unrecognized selector sent to instance
这是我的实现文件中的块
@implementation CraftingViewController
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view.
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
return 5;
}
-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = (UITableViewCell *) [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier];
}
cell.textLabel.text = @"Detail";
return cell;
}
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
}
答案 0 :(得分:1)
正在显示该错误消息,因为tableView:numberOfRowsInSection:
被发送到UINavigationItem
类型的对象,而您的CraftingViewController
类似乎可能是UITableViewController
类型。我会确保您已将代理连接到正确的类,因为CraftingViewController
似乎没有正确连接。
答案 1 :(得分:-1)
如果数据源是nib文件的控制器。
请检查此控制器的alloc使用“CraftingViewController”而不是“UIViewController”