【发布时间】:2014-02-21 03:12:56
【问题描述】:
我有一个“MutableArray”,我想通过此处显示的方法在索引中上下移动不同的对象来编辑它:NSMutablearray move object from index to index。
我的问题是 Xcode 首先在 'insertObject:atIndex:' 之前处理 'removeObjectAtIndex' 方法,因此数组实际上缩小了大小,这使得某些转换变得不可能。一个例子是,如果我的“数组”有 3 个成员,并且我将第三个成员的索引从 2 更改为 2,所以什么都不会发生,但实际上应用程序崩溃了,因为删除后索引绑定现在是 [0,1]。
下面是我用来实现数组移动的代码,我还在queue.count 后面的“if”语句处收到了一个解析问题:编译器的预期标识符错误。对两者的任何帮助将不胜感激。
-(void)makeRankChange:(NSMutableArray *)queue{
for (int queueCount =0; queueCount<queue.count; queueCount++) {
QueueMember *member = [queue objectAtIndex:queueCount];
if (member.rank != queueCount+1) {
if ([0<member.rank] && [member.rank < [queue.count(expected identifier here:Im not sure why)]]) {
[queue insertObject:member atIndex:member.rank-1];
[queue removeObjectAtIndex:queueCount];
}
}
}
}
【问题讨论】:
标签: nsmutablearray