gpt4 book ai didi

iphone - 有人可以帮助我解决我遇到的 NSSortDescriptor 问题吗?

转载 作者:行者123 更新时间:2023-11-29 11:18:17 25 4
gpt4 key购买 nike

我有以下按升序排序的代码。

NSSortDescriptor *sortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"platform.name" ascending:YES];
NSMutableArray *sortedReleases = [NSMutableArray arrayWithArray:[theReleases sortedArrayUsingDescriptors:[NSArray arrayWithObject:sortDescriptor]]];
[sortDescriptor release];

我想做的是在以下位置进行排序:

  1. 显示 sortedRelease 标记为 true 的那些

  2. 使用 acsending 对其余的进行排序(目前它是如何做的)

我该怎么做?

最佳答案

sortedArrayUsingDescriptors:sortDescriptors 方法是复数形式并采用一个数组,因此这意味着您可以拥有多个排序描述符,这些描述符将按照它们在数组中出现的顺序应用。

如果我对您的理解是正确的并且您拥有属性 sortedRelease,则以下代码将按您希望的方式进行排序。

NSSortDescriptor *sortBySortedRelease = [[NSSortDescriptor alloc] initWithKey:@"sortedRelease" ascending:NO];
NSSortDescriptor *sortByName = [[NSSortDescriptor alloc] initWithKey:@"platform.name" ascending:YES];

NSArray *sortDescriptors = [[NSArray alloc] initWithObjects:sortBySortedRelease, sortByName, nil];

[sortBySortedRelease release]; sortBySortedRelease = nil;
[sortByName release]; sortByName = nil;

NSMutableArray *sortedReleases = [NSMutableArray arrayWithArray:[theReleases sortedArrayUsingDescriptors:sortDescriptors]];
[sortDescriptors release]; sortDescriptors = nil;

这是 NSArray 文档中的相关部分

- (NSArray *)sortedArrayUsingDescriptors:(NSArray *)sortDescriptors

Parameters
sortDescriptors
An array of NSSortDescriptor objects.

Return Value
A copy of the receiving array sorted as specified by sortDescriptors.

Discussion
The first descriptor specifies the primary key path to be used in sorting the receiving array’s contents. Any subsequent descriptors are used to further refine sorting of objects with duplicate values. See NSSortDescriptor for additional information.

关于iphone - 有人可以帮助我解决我遇到的 NSSortDescriptor 问题吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8468534/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com