2010-08-09 2 views
2

У меня есть объекты в моем NSMUtableArray, и мне нужно отсортировать их в порядке убывания на основе tax.taxName.Can, любой орган предлагает мне, как это сделать.Сортировка строк в NSMutableArray в Iphone Sdk?

Надеюсь, что я получаю быстрый ответ от вас, ребята.

Заранее спасибо. Мони.

ответ

0

Если предположить, верно, что объекты в массиве из пользовательского класса, реализовать метод в этом классе:

- (NSComparisonResult)compareByTax:(id)other 
{ 
    return [[self valueForKeyPath: @"tax.taxName"] compare: [other valueForKeyPath: @"tax.taxName"]]; 
} 

Затем выполните следующие действия:

[array sortUsingSelector: @selector(compareByTax:)]; 
0

С iOS4 вы можете использовать компараторы с этим сообщением NSArray:

- (NSArray *)sortedArrayUsingComparator:(NSComparator)cmptr 

вы бы написать что-то вроде этого:

NSArray *sortedArray = [unsortedArray sortedArrayUsingComparator:^(id object1, id object2) { // return NSComparisonResult ... }] 

Другая возможность состоит в том, чтобы определить функцию переменного тока, который используется в качестве обратного вызова с этим Сообщение NSArray:

- (NSArray *)sortedArrayUsingFunction:(NSInteger (*)(id, id, void *))comparator context:(void *)context 

Взгляните в документацию NSArray там являются сообщениями для сортировки с помощью селекторов или дескрипторов. Это зависит от того, что подходит вам лучше всего.

Смежные вопросы