NSSortDescriptor有方法sortDescriptorWithKey:ascending:selector:。这会获取正在排序的对象,找到对象的key键值编码属性,然后将该属性发送到指定的选择器。我想将对象本身发送给选择器,以通过其中一种方法直接对对象进行排序。我尝试了@"self"键,但失败并出现以下错误:[NSSortDescriptorsortDescriptorWithKey:@"self"ascending:YESselector:@selector(compare:)];'NSInvalidArgumentException',reason:'keypath#s
我正在使用TouchJSON检索我的应用程序的信息并将其放入字典中。我希望能够按难度和评级等值对其进行排序。我该怎么做?我已经包含了我的.m文件。谢谢,enbrhttp://pastie.org/1091334 最佳答案 您或许可以使用NSSortDescriptor对具有指定键的字典数组进行排序。因此,例如,以下内容可以按每个字典中的键“ratings”对数组进行排序:NSSortDescriptor*ratingsSortDescriptor=[[[NSSortDescriptoralloc]initWithKey:@"rati
我有一个NSEntity(Cloth),其属性(type)是从预定义的NSString值,即Poncho、Jacket、Coat、Gown、Top、Suit等。我想获取所有Cloth记录,以便根据为type定义的顺序对记录进行排序。即Poncho的所有记录都在顶部,然后是Jacket,然后是Coat,然后是Gown,然后是Top,然后是Suit,等等。Poncho…Poncho…Poncho…Jacket…Jacket…Coat…Coat…Coat…Gown…Gown…Top…Top…Top…Top…Suit…Suit…此顺序不是升序或降序,而是自定义的。我如何获取Cloth记录
我有一个歌曲实体和一个播放列表实体。播放列表可以有多个歌曲,歌曲可以链接到多个播放列表。我有一个ListToSongs实体,它维护将歌曲添加到播放列表的顺序。我没有在ios5中使用“有序关系”(我知道它的存在并且我需要对我的模型进行更多控制)并且我通过PlayListToSong实体中的“sortOrder”字段存储顺序。因此模式被建模为(关系名称写在下面的括号中):歌曲(播放列表)(歌曲)ListToSong(播放列表)>(歌曲)列表我想使用获取请求获取给定播放列表的所有歌曲。以下对ListToSong的查询有效。这会获取所有PlayListToSongobjs,我可以使用obj.s
我通过属性“index”列表获取名为“DictObj”的Realm对象,如下所示:NSArray*listIDs=@[@1000,@0,@100,@4];NSPredicate*predicate=[NSPredicatepredicateWithFormat:@"indexIN%@",listIDs];self.fetchedResults=[DictObjobjectsInRealm:realmwithPredicate:predicate];我只是获取结果,但它会按主键“索引”自动排序,我想按“listIDs”保持排序。因此,我创建了sortDescriptor并尝试对其进行自定
我有一个循环访问数据数组的TableView。数据是一组可能附有提醒时间的联系人。例如:杰西卡约翰比尔卡特里娜飓风(2月9日)布莱恩(2月11日)现在,它通过核心数据属性reminderDate以升序方式对tableview进行排序。它半正确地工作。唯一的问题是我希望将具有NULLreminderDate的项目扔到NSFetchedResultsController的末尾,而不是在开始。理想情况下,它看起来像这样:卡特里娜飓风(2月9日)布莱恩(2月11日)杰西卡约翰比尔我不能使用比较型NSSortDescriptor,因为NSFetchedResultsController不支持它。
我有一个从自定义类创建的对象数组。每个对象都有一个NSDate属性。根据日期属性对所有这些对象进行排序的最简单快捷的方法是什么?(按从最近到最不最近的顺序排列)。 最佳答案 NSSortDescriptor*sortDescriptor=[[NSSortDescriptoralloc]initWithKey:@"thisIsTheNameOfYourDateProperty"ascending:NO];NSArray*orderedArray=[arrayOfCustomObjectssortedArrayUsingDescript
我在GCD调度队列中对NSManagedObjectContext进行操作,定义如下:-(NSManagedObjectContext*)backgroundContext{if(backgroundContext==nil){self.backgroundContext=[NSManagedObjectContextMR_contextThatNotifiesDefaultContextOnMainThread];}returnbackgroundContext;}MR_contextThatNotifiesDefaultContextOnMainThread是来自MagicalRe
我有一个名为Delivery的对象,它有一组与之关联的Customer对象。每个Delivery对象还存储一个mainCustomerId,它是一个NSNumber*。我有一个NSFetchedResultsController,用于管理UITableView的数据源。问题是我想按客户的lastName字段对NSFetchedResultsController进行排序(客户再次存储在Delivery对象上称为customers的多对多关系中)其中,集合中的一位客户的customerId等于Delivery的MainCustomerId。交付类看起来像这样(只有相关部分)@interfa
这是一个非常简单的问题。我有一个使用本地文件初始化的CoreData数据库。看起来像这样的CoreData架构:Category-->>Objections-->>Responses-->>Evidence("-->>"表示,有很多)我正在使用NSFetchedResultsController从核心数据中检索对象。相当标准。NSEntityDescription*entity=[NSEntityDescriptionentityForName:NSStringFromClass([OHObjectionclass])inManagedObjectContext:self.manage