Сортировка строк в NSMutableArray в Iphone SDK? - PullRequest
2 голосов
/ 09 августа 2010

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

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

Спасибо заранее. Мониш.

Ответы [ 2 ]

0 голосов
/ 09 августа 2010

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

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

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

[array sortUsingSelector: @selector(compareByTax:)];
0 голосов
/ 09 августа 2010

Начиная с 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, есть также сообщения для сортировки с помощью селекторов или дескрипторов.Это зависит от того, что подходит вам лучше всего.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...