2012-03-15 8 views
1

私はオブジェクトを含むNSArrayを持っています。私のオブジェクトは次のようなものです:カスタムオブジェクトを含むNSArrayを並べ替えます。

@interface Personne : NSObject{ 

    int _id; 
    NSString *name; 
} 

私は名前で人を返すWebサービスを持っています。例えば;検索バーをクリックして「a」を入力すると、サーバーは彼女の名前に「a」が含まれているすべての人を返し、結果をNSArrayに入れます。今度は配列をソートして、配列の先頭に "a"で始まる名前の人物と最後に他の人物を配置したいと思います。これどうやってするの?

編集:たとえば、私はこのようなサーバーの応答を持っている:

marakech 
arabie 
malakit 
arsenal 
astonvilla 

私はこのようにソートしたいと思います:

arabie 
arsenal 
astonvilla 
malakit 
+1

この回答はあなたが探しているものです:http://stackoverflow.com/questions/805547/how-to-sort-an-nsmutablearray-with-custom-objects-in-it助けて! :) –

答えて

2

あなたがこの方法を使用することができました:

コンパレータブロックを取る
- (NSArray *)sortedArrayUsingComparator:(NSComparator)cmptr 

、そしてあなたは、このようなブロックであなたのソート基準を置くことができます:

mySortedArray = [myArrat sortedArrayUsingComparator: ^(id a, id b) { 
    //criteria; 
    return [a compare:b]; 
+0

ma編集を参照してください、ありがとう – samir

2

私はあなたが、NSMutableArrayをする必要はないと思いますNSArray。また、使用sortUsingSelector:

すなわち最初のあなたは、あなたがこのsortUsingSelector:@selector(compare:)

チェックして可変配列を並べ替えることができますことができ、あなたのPersonneクラス- (NSComparisonResult)compare:(MyObj *)otherObjするための方法を書くことができますソートする - How to sort an NSMutableArray with custom objects in it?

関連する問題