Objective c 挂钩Swift不工作时从NSMUTABLEARRY中删除项目
这是我的密码:Objective c 挂钩Swift不工作时从NSMUTABLEARRY中删除项目,objective-c,nsmutablearray,nsarray,Objective C,Nsmutablearray,Nsarray,这是我的密码: -(NSArray*)buttons { NSArray *buttons = %orig; NSMutableArray *mutableItems = [NSMutableArray arrayWithArray:buttons]; [mutableItems objectAtIndex:2]; return mutableItems; } 我试图从NSArray中删除一个对象,但该NSArray属于Swift类。我很容易在Swift类中更改
-(NSArray*)buttons {
NSArray *buttons = %orig;
NSMutableArray *mutableItems = [NSMutableArray arrayWithArray:buttons];
[mutableItems objectAtIndex:2];
return mutableItems;
}
我试图从NSArray中删除一个对象,但该NSArray属于Swift类。我很容易在Swift类中更改任何其他内容,但是我无法从NSArray中删除任何对象。我没有得到任何错误,但我所做的更改根本没有任何效果。这是一个越狱调整。将
[mutableItems objectAtIndex:2]
替换为[mutableItems removeObjectAtIndex:2]
完整示例:
-(NSArray*)buttons {
NSArray* buttons = @[@"a", @"b", @"c", @"d"];
NSMutableArray *mutableItems = [NSMutableArray arrayWithArray:buttons];
[mutableItems removeObjectAtIndex:2];
return mutableItems;
}
mutableItems
数组将包含a、b、d。将[mutableItems objectAtIndex:2]
替换为[mutableItems removeObjectAtIndex:2]
完整示例:
-(NSArray*)buttons {
NSArray* buttons = @[@"a", @"b", @"c", @"d"];
NSMutableArray *mutableItems = [NSMutableArray arrayWithArray:buttons];
[mutableItems removeObjectAtIndex:2];
return mutableItems;
}
mutableItems
数组将包含a、b、d.这仍然不起作用,我不明白如果我没有创建,为什么我需要将a、b、c和d添加到NSArray中it@Squ1dd13Dev这只是一个例子,因为我不知道%orig
是什么。它说明了如何从数组中删除索引2处的对象。我以为您最初的问题是如何从NSArray中删除对象。但由于某些原因,您的答案仍然不起作用。@Squ1dd13Dev编辑问题以发布您现在拥有的完整代码。例如,如何创建%orig等。如果%orig
中有“0-19项”,则不能仅删除索引2处的项。当%orig只有0、1或2项时,将导致崩溃。此外,这里显示的代码是正确的。。。如果你有问题,你应该分享更多你的代码。这仍然不起作用,我不明白为什么我需要添加a,b,c和d到NSArray如果我没有it@Squ1dd13Dev这只是一个例子,因为我不知道%orig
是什么。它说明了如何从数组中删除索引2处的对象。我以为您最初的问题是如何从NSArray中删除对象。但由于某些原因,您的答案仍然不起作用。@Squ1dd13Dev编辑问题以发布您现在拥有的完整代码。例如,如何创建%orig等。如果%orig
中有“0-19项”,则不能仅删除索引2处的项。当%orig只有0、1或2项时,将导致崩溃。此外,这里显示的代码是正确的。。。如果遇到问题,应共享更多代码。是否使用调试器隔离问题?是否使用调试器隔离问题?