0

我有一个名为 userResults 的类,如下所示:

#import <Foundation/Foundation.h>

@interface userResults : NSObject

@property (nonatomic, strong) NSString *resultsMix;
@property (nonatomic, strong) NSNumber *resultsSaving;
@property (nonatomic, strong) NSNumber *resultsBlendComponent1;
@property (nonatomic, strong) NSNumber *resultsBlendComponent2;
@property (nonatomic, strong) NSNumber *resultsTotalProtein;
@property (nonatomic, strong) NSNumber *resultsPricePerPound;
@property (nonatomic, strong) NSNumber *resultsPricePerPoint;

@end

使用这样的实现:

#import "userResults.h"

@implementation userResults

@end

我将在一个名为 results 的 NSMutableArray 中建立这个的多个值。

我希望能够在 *resultsSaving 字段的结果中对记录进行排序。

我已经填充了两个数组,results1 和 results2,并将它们放在更大的数组中,然后我尝试使用这段代码进行排序。

results = [NSMutableArray arrayWithObjects:results1,results2,nil];
NSSortDescriptor *sort = [NSSortDescriptor sortDescriptorWithKey:@"resultsSaving" ascending:YES];
[results sortUsingDescriptors:sort];

不工作。我想我可能有一些概念上的问题。任何帮助将不胜感激。

布莱恩

4

1 回答 1

0

在网上搜索了很多之后,我找到了这个答案:

NSSortDescriptor *sortDescriptor;
sortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"resultsSaving"
                                            ascending:NO];
NSArray *sortDescriptors = [NSArray arrayWithObject:sortDescriptor];
sortedArray = [results sortedArrayUsingDescriptors:sortDescriptors];

奇怪的是你不能做降序,但必须给出升序:NO。这很奇怪。

于 2013-11-03T15:09:16.953 回答