小编Pon*_*ays的帖子

NSMutableArray removeObjectAtIndex在第二次执行时崩溃

我有一个包含许多行的tableview,我希望能够删除这些行.填充tableview的数据存储在NSMutableArray中.要删除一行上的数据我打电话:

- (void)deleteFromArray:(NSUInteger) number{
    NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults];  //load NSUserDefaults
    NSMutableArray *storedArray = [[ NSMutableArray alloc] init];
    storedArray = [prefs objectForKey: @"mydata"];
    [storedArray removeObjectAtIndex:number];

    [prefs setObject:storedArray forKey:@"mydata"];
    [storedArray release];
    [prefs synchronize];

}
Run Code Online (Sandbox Code Playgroud)

- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath {
    if (editingStyle == UITableViewCellEditingStyleDelete) {
        subscribe *subscribeclass = [subscribe alloc];
        [subscribeclass deleteFromArray: indexPath.row];
        [myTableView reloadData];
    }
}
Run Code Online (Sandbox Code Playgroud)

这在我第一次删除行时工作正常.但是当我删除秒行时,应用程序在deleteFromArray中的以下行崩溃:

[storedArray removeObjectAtIndex:number];
Run Code Online (Sandbox Code Playgroud)

有什么想法吗?

cocoa-touch uitableview nsmutablearray ios

0
推荐指数
1
解决办法
1986
查看次数

标签 统计

cocoa-touch ×1

ios ×1

nsmutablearray ×1

uitableview ×1