我在 a 上有一个按钮ViewController
来加载TableViewController
. 按钮后面的代码是:
- (IBAction)loadSearchView:(id)sender {
SearchTableViewController *searchVC = [[SearchTableViewController alloc] initWithStyle:UITableViewStylePlain];
[[self navigationController] pushViewController:searchVC animated:YES]; }
加载时TableViewController
,应用程序崩溃并出现以下错误:
2013-02-21 15:22:19.460 MyMusicLibrary[4159:c07]-[UITableView dequeueReusableCellWithIdentifier:forIndexPath:]:无法识别的选择器发送到实例 0x7aa0800 2013-02-21 15:22:19.462 MyMusicLibrary[4159:c07] * 终止应用程序由于未捕获的异常'NSInvalidArgumentException',原因是: ' - [UITableView的dequeueReusableCellWithIdentifier:forIndexPath:]:无法识别的选择发送到实例0x7aa0800' *第一掷调用堆栈:(0x14b5022 0xeb5cd6 0x14b6cbd 0x141bed0 0x141bcb2 0x3279 0xb2c54 0xb33ce 0x9ecbd 0xad6f1 0x56d21 0x14b6e42 0x1d86679 0x1d90579 0x1d154f7 0x1d173f6 0x1d16ad0 0x148999e 0x1420640 0x13ec4c6 0x13ebd84 0x13ebc9b 0x139e7d8 0x139e88a 0x18626 0x1fdd 0x1f05) 终止调用抛出异常
它试图在加载 TableViewController 时运行的代码是:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];
// Configure the cell...
if (cell == nil) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
}
[[cell textLabel] setText:[NSString stringWithFormat:@"Cell %i", [indexPath row]]];
return cell;
}
numberOfSectionsInTableView 和 numberOfRowsInSection 设置如下:
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
// Return the number of sections.
return 1;
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
// Return the number of rows in the section.
return 10;
}
但是,当这些都设置为 0 时,会加载表格视图。任何人都可以帮忙吗?:)