ios – 如何根据修改日期对UIDocument的icloud NSMetadataQuery结果进行排序?

ios – 如何根据修改日期对UIDocument的icloud NSMetadataQuery结果进行排序?,第1张

概述我有一个iOS应用程序,它使用一个简单的UIDocument模型和一个内容字段用于iCloud存储.我检索文档列表以使用NSMetadataQuery填充UITableView.我希望在此表的顶部显示新文档,但默认排序似乎是旧的 – >新. 我知道如果我在文档中有自定义日期字段,我可以在该字段上使用NSSortDescriptor对查询进行排序,但我的问题是是否可以按照通过UIDocument i 我有一个iOS应用程序,它使用一个简单的UIdocument模型和一个内容字段用于iCloud存储.我检索文档列表以使用NSMetadataquery填充UItableVIEw.我希望在此表的顶部显示新文档,但默认排序似乎是旧的 – >新.

我知道如果我在文档中有自定义日期字段,我可以在该字段上使用NSSortDescriptor对查询进行排序,但我的问题是是否可以按照通过UIdocument iCloud存储创建的文件的内在修改日期进行排序?或者还有另一种首选方法吗?

解决方法 看起来正确的方法是在创建查询时设置查询的排序描述符.这些方面的东西:
NSMetadataquery *query = [[NSMetadataquery alloc] init];[query setSearchScopes:[NSArray arrayWithObject:                            NSMetadataqueryUbiquitousdocumentsScope]];nspredicate *pred = [nspredicate predicateWithFormat: @"%K ENDSWITH '.bin'",NSMetadataItemFSnameKey];[query setPredicate:pred];NSSortDescriptor *sortDescriptor =     [[[NSSortDescriptor alloc] initWithKey:NSMetadataItemFSContentChangeDateKey                                  ascending:FALSE] autorelease]; //means recent firstNSArray *sortDescriptors = [NSArray arrayWithObjects:                                sortDescriptor,nil];        [query setSortDescriptors:sortDescriptors];[[NSNotificationCenter defaultCenter]      addobserver:self      selector:@selector(queryDIDFinishGathering:)      name:NSMetadataqueryDIDFinishGatheringNotification      object:query];[query startquery];
总结

以上是内存溢出为你收集整理的ios – 如何根据修改日期对UIDocument的icloud NSMetadataQuery结果进行排序?全部内容,希望文章能够帮你解决ios – 如何根据修改日期对UIDocument的icloud NSMetadataQuery结果进行排序?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1100337.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-28
下一篇2022-05-28

发表评论

登录后才能评论

评论列表(0条)

    保存