我已经查看了基本上每个堆栈溢出问题,但我无法找到答案。没有一个答案似乎有用。
我正在编写一个包含tableview的应用程序,并将uitableview作为子视图。 uitableview是数据源和委托连接到一个名为xvalues的类,它是uitableviewcontroller的子类。我也有一个类,我加载一个自定义的uitableviewcell。这一切都不会导致任何错误。
以下是我在xvalues中的uitableview代码:
- (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 1;
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
tableviewcell *cell = [[tableviewcell alloc]initWithFrame:CGRectZero];
return cell;
}
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
// Navigation logic may go here. Create and push another view controller.
/*
<#DetailViewController#> *detailViewController = [[<#DetailViewController#> alloc] initWithNibName:@"<#Nib name#>" bundle:nil];
// ...
// Pass the selected object to the new view controller.
[self.navigationController pushViewController:detailViewController animated:YES];
[detailViewController release];
*/
}
我删除了一些注释掉的方法,例如可以在索引路径编辑行并提交编辑样式。
在cellforrowatindexpath中,tableviewcell是我的自定义单元类。
由此,当我运行我的代码时,它会使用我的自定义单元格加载我的uitableview,包含1个单元格。 但是,现在,如果我单击并拖动,它可以拖动大约一英寸,然后突然崩溃并出现错误:
2012-07-16 12:14:16.957 spreadsheet[68717:f803] -[__NSCFString tableView:cellForRowAtIndexPath:]: unrecognized selector sent to instance 0x6894400
2012-07-16 12:14:16.960 spreadsheet[68717:f803] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSCFString tableView:cellForRowAtIndexPath:]: unrecognized selector sent to instance 0x6894400'
*** First throw call stack: blah blah blah
当我点击该行时也会发生这种情况,但我认为这是因为我在索引路径方法中选择了行。
如果有人能帮助我,那将会非常有帮助。
答案 0 :(得分:0)
您的表视图控制器已被取消分配。确保您保留xvalues
个实例(或将其分配给某个内容的strong
属性,例如您的应用代表),无论您在何处创建它。