iphone - 使用 NSSortDescriptor

标签 iphone objective-c ios core-data nssortdescriptor

我正在使用 sortDescriptor 对我的 NSFetchRequest 结果进行排序。我正在做这个。

NSFetchRequest *request = [NSFetchRequest fetchRequestWithEntityName:@"Team"];
    request.sortDescriptors = [NSArray arrayWithObject:[NSSortDescriptor sortDescriptorWithKey:@"position" ascending:YES]];

位置可以是4个值:

  1. 攻击者
  2. 守门员
  3. 边锋
  4. 后卫

目前,它将所有位置分开分组。所以首先是所有前锋,然后是所有守门员,然后是所有后卫,最后是所有边锋。我现在想要实现的是改变排名顺序。排名顺序应该是。

  1. 首先是所有守门员
  2. 第二个所有防守者
  3. 第三边锋
  4. 最后是所有边锋

有人知道我该怎么做吗?

提前致谢!

最佳答案

一种困惑的做法是添加一个额外的整数列来表示每个玩家类型,然后按它排序。

编辑:这不一定是一种“困惑”的方法,因为它可以完成工作,但我认为它是困惑的唯一原因是因为您必须添加额外的东西以便您了解播放器的类型。尽管如此,这是一种合理的方法。

关于iphone - 使用 NSSortDescriptor,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12806329/

相关文章:

iphone - UIViewController 包含方向变化

ios - 如何将gestureRecognizer添加到我的GameScene.m文件中?

iOS: session +改变IP地址;如何在客户端处理它?

iphone - 检测用户是否仍保持触摸且未松开

ios - 有没有什么方法可以让服务器在没有应用程序请求数据的情况下与 iPhone 应用程序通信?

iphone - 在iPhone SDK中创建圆形按钮

objective-c - NSWindow 级别和模式对话框

objective-c - 如何让 Cocoa NSTextView 随着用户输入而增长?

iphone - 如何在 iPhone 上的 OpenGL ES 2.0 中混合具有不同坐标的两个纹理?

iOS NSStream FTP 在闲置 5 分钟后没有响应