Получить массив значений, отсортировать этот массив и затем получить ключ, соответствующий значению.
Вы можете получить значения с помощью:
NSArray* values = [myDict allValues];
NSArray* sortedValues = [values sortedArrayUsingSelector:@selector(comparator)];
Но, если коллекциякак вы показываете в своем примере (я имею в виду, вы можете вывести значение из ключа), вы всегда можете отсортировать ключи, а не связываться со значениями.* Компаратор - это селектор сообщений, который отправляется объекту, который вы хотите заказать.
Если вы хотите упорядочить строки, вам следует использовать компаратор NSString.Компараторы NSString: caseInsensitiveCompare или localizedCaseInsensitiveCompare.)
NSInteger intSort(id num1, id num2, void *context)
{
int v1 = [num1 intValue];
int v2 = [num2 intValue];
if (v1 < v2)
return NSOrderedAscending;
else if (v1 > v2)
return NSOrderedDescending;
else
return NSOrderedSame;
}