【发布时间】:2014-01-22 00:52:02
【问题描述】:
我创建了一个对象数组,对象的一个属性是“rank”。我想按数组中每个对象的排名值对数组进行排序。
它会抛出以下错误:
-[NSSortDescriptor count]:无法识别的选择器发送到实例 0x10a0537d0
这是我对对象数组的方法调用:
[_objects sortUsingDescriptors:[NSSortDescriptor sortDescriptorWithKey:@"rank" ascending:YES selector:@selector(compare:)]];
以下是数组中的对象所属类的相关代码:
@synthesize rank;
- (void)initWithRank:(int)rankNum Name:(NSString*)nameString URL:(NSString*)urlString
{
self.rank = [NSNumber numberWithInt:rankNum];
self.name = nameString;
self.url = urlString;
}
如您所见,“rank”是一个 NSNumber,并且 NSNumber 类有一个名为“compare:”的方法,它应该通过它们的值来比较 NSNumber,所以我不明白为什么它告诉我选择器无法识别.提前感谢您的帮助。
【问题讨论】:
标签: ios objective-c nsmutablearray nssortdescriptor