我有一个NSMutableArray一个UITableViewController在这样的标题:的NSMutableArray removeObjectAtIndex:indexPath.row崩溃
NSMutableArray *someArray;
我也有属性声明:
@property (nonatomic, retain) NSMutableArray *someArray;
在.m文件我在该方法中加载阵列:
- (void)viewDidAppear:(BOOL)animated {
[super viewDidAppear:animated];
someArray = [[NSMutableArray alloc] init];
[self loadArrayData];
[tableview reloadData];
}
该表填充很好,添加没有问题,但w母鸡我尝试删除一行,以下线的应用程序崩溃:
- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath {
if (editingStyle == UITableViewCellEditingStyleDelete) {
[someArray removeObjectAtIndex:indexPath.row];
//update table etc..
如果我使用调试器,我可以看到阵列具有一定的对象,当我登录indexPath.row我得到的值在数组大小内。
我不明白它为什么会崩溃在这条线上......谁能帮助我?
控制台输出:
*终止应用程序由于未捕获的异常 'NSInvalidArgumentException',原因: ' - [__ NSArrayI removeObjectAtIndex:]:无法识别的选择发送到实例0x6193890'
有关崩溃的更多信息可能会有所帮助。发生了什么样的碰撞? – 2011-03-08 20:09:44
对不起,我添加了控制台错误输出.. – CyberK 2011-03-08 20:12:49
嗯,我真的不知道。很明显,一个无效的参数被传递给removeObjectAtIndex :.但是indexPath.row应该返回一个NSUInteger,它是一个有效的参数。 – 2011-03-08 20:44:24