Ios 使用NSSortDescriptor按逆时间顺序对核心数据进行排序

Ios 使用NSSortDescriptor按逆时间顺序对核心数据进行排序,ios,core-data,swift,Ios,Core Data,Swift,我用一个tableview设置了一个核心数据数据库,我正在尝试将它设置为表视图中显示的对象按相反的时间顺序显示。我试图用NSSortDescriptor来做这件事,但我不知道如何按相反的时间顺序来排序。有什么想法吗?谢谢 这是我的密码: func getCoreData(){ var appDel : AppDelegate = UIApplication.sharedApplication().delegate as AppDelegate var conte

我用一个tableview设置了一个核心数据数据库,我正在尝试将它设置为表视图中显示的对象按相反的时间顺序显示。我试图用NSSortDescriptor来做这件事,但我不知道如何按相反的时间顺序来排序。有什么想法吗?谢谢

这是我的密码:

func getCoreData(){

        var appDel : AppDelegate = UIApplication.sharedApplication().delegate as AppDelegate
        var context : NSManagedObjectContext = appDel.managedObjectContext!
        var req : NSFetchRequest = NSFetchRequest(entityName: "KeptQuotes")

        var s = NSSortDescriptor(key: "quote", ascending: true)
        req.sortDescriptors = [s]

        var error : NSError?

        let fetchedResults = context.executeFetchRequest(req, error: &error) as [NSManagedObject]?


        if let results = fetchedResults {

            keptQuotes = results

        }else{

            println("Could not fetch \(error), \(error!.userInfo)")

        }

        tableView.reloadData()

    }

在NSDate类型的实体中设置日期属性,然后将此属性设置为排序描述符,并将升序设置为false

let sortDescriptor = NSSortDescriptor(key: "date", ascending: false)
fetchRequest.sortDescriptors = [sortDescriptor]

有没有办法不用设置日期就可以做到这一点?你必须给它提供一些属性进行排序,而且似乎日期属性适合你处理的数据啊哈,对于没有添加日期对象的对象,会发生什么情况?它们会被排除在表视图之外还是被发送到后面?不确定它会如何处理,但无论如何尝试都没有坏处。在最坏的情况下,您可以编写自己的比较方法“通过指定要比较的属性的键路径、排序顺序(升序或降序)和(可选)用于执行比较的选择器来构造NSSortDescriptor的实例”