如何删除一个NSArray的不同索引中的对象? IOS

时间:2014-05-11 17:15:49

标签: ios nsarray

好吧,伙计。

我在这里遇到问题,当我尝试删除一个NSMutableArray的不同索引处的对象时。  我知道如何使用方法NSArray初始化NSIndexPath [_tableFavoritos indexPathsForSelectedRows],但我不知道如何从此NSIndexSet创建NSArray

我想使用方法

[arrayFavoritos removeObjectsAtIndexes : (here my NSIndexSet) ];

解决这个问题。

如果有人知道另一种方式,欢迎。

...谢谢

NSArray *indexesArray = [[NSArray alloc]initWithArray:[_tableFavoritos indexPathsForSelectedRows]];

[arrayFavoritos removeObjectsAtIndexes:];

[_tableFavoritos deleteRowsAtIndexPaths:[_tableFavoritos indexPathsForSelectedRows] withRowAnimation:UITableViewRowAnimationFade];

[_tableFavoritos reloadData];

1 个答案:

答案 0 :(得分:0)

这应该适合你:

NSArray *indexesArray = [[NSArray alloc]initWithArray:[_tableFavoritos indexPathsForSelectedRows]];

NSMutableIndexSet *indexSet = [NSMutableIndexSet new];
[indexesArray enumerateObjectsUsingBlock:^(NSIndexPath *indexPath, NSUInteger idx, BOOL *stop) {
    [indexSet addIndex:indexPath.row];
}];

[arrayFavoritos removeObjectsAtIndexes:indexSet];

[_tableFavoritos deleteRowsAtIndexPaths:[_tableFavoritos indexPathsForSelectedRows] withRowAnimation:UITableViewRowAnimationFade];

[_tableFavoritos reloadData];