无法删除 NSMutableArray 中的所有对象
Can't remove all objects in NSMutableArray
出于某种原因,当我 运行 我的应用程序时,我一直收到此错误:
[__NSArrayI removeAllObjects]: unrecognized selector sent to instance
我在 .m 中设置 NSMutable 数组是这样的:
@implementation ChooseViewController
{
NSMutableArray *trackName;
}
并像这样填充它:
trackName = [JSON valueForKeyPath:@"results.trackName"];
但是当我 运行 这段代码时,它给了我错误:
[trackName removeAllObjects];
其他一切正常,trackName 中的数据正常。当我 运行 这段代码时,它只是搞砸了。唯一提到的其他时间 trackName 数组是 table 观看次数:
return [trackName count];
你看有什么不对吗?我认为问题在于它认为它是 NSArray 的某个地方,但其中 none 是。
可变问题。
trackName = [JSON valueForKeyPath:@"results.trackName"];
此行将生成 trackName 的不可变数组。更改为:
trackName = [[JSON valueForKeyPath:@"results.trackName"] mutableCopy];
现在,trackName
是可变的,因此您可以调用。
[trackName removeAllObjects];
出于某种原因,当我 运行 我的应用程序时,我一直收到此错误:
[__NSArrayI removeAllObjects]: unrecognized selector sent to instance
我在 .m 中设置 NSMutable 数组是这样的:
@implementation ChooseViewController
{
NSMutableArray *trackName;
}
并像这样填充它:
trackName = [JSON valueForKeyPath:@"results.trackName"];
但是当我 运行 这段代码时,它给了我错误:
[trackName removeAllObjects];
其他一切正常,trackName 中的数据正常。当我 运行 这段代码时,它只是搞砸了。唯一提到的其他时间 trackName 数组是 table 观看次数:
return [trackName count];
你看有什么不对吗?我认为问题在于它认为它是 NSArray 的某个地方,但其中 none 是。
可变问题。
trackName = [JSON valueForKeyPath:@"results.trackName"];
此行将生成 trackName 的不可变数组。更改为:
trackName = [[JSON valueForKeyPath:@"results.trackName"] mutableCopy];
现在,trackName
是可变的,因此您可以调用。
[trackName removeAllObjects];