[英]NSArray sort with custom objects
我有以下課程:
typedef enum eItems {
kItem1,
kItem2,
kItem3
} MyItem;
@interface MyClass: CCSprite<CCTargetedTouchDelegate>{
...
MyItem mClIt;
...
}
...
- (NSComparisonResult)MyCompareFunc:(MyClass*)inObject
- (MyItem)GetSomeItem;
...
和排序功能:
- (NSComparisonResult)MyCompareFunc:(MyClass*)inObject
{
if ([self GetSomeItem] > [inObject GetSomeItem])
return NSOrderedDescending;
else if ([self GetSomeItem] < [inObject GetSomeItem])
return NSOrderedAscending;
return NSOrderedSame;
}
我稍后將在某些類中創建MyClass對象的NSArray:
@interface Person : Main {
....
NSArray * mObjArr;
....
}
我需要使用sortUsingSelector:@selector(MyCompareFunc:)
方法在MyCompareFunc的幫助下對mObjArr進行排序。 但是我有以下錯誤:
錯誤:訪問未知的'mObjArr'getter方法。
請幫助解決問題。
我不確定這是否是唯一的問題,但是您需要使用NSMutableArray而不是NSArray來使用sortUsingSelector:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.