swift3核心数据的逆序

时间:2016-12-15 16:04:12

标签: uitableview swift3 nsmanagedobject

我是Swift 3的新手。这是我的情况:

我在核心数据中保存了一些数据。与1,2,3,4,5...一样,我想将它们推进tableView,顺序为(5,4,3,2,1)

以下是我的一些代码:

记录:

override func viewWillAppear(_ animated: Bool) {
    let appDelegate = UIApplication.shared.delegate as! AppDelegate
    let managedContext = appDelegate.persistentContainer.viewContext
    let request = NSFetchRequest<NSFetchRequestResult>(entityName: "List")

    do {
        let result = try managedContext.fetch(request)
        Array = result as! [NSManagedObject]
    }
    catch {
        print("some error.....")
    }
}

推入单元格

override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
    let cell = tableView.dequeueReusableCell(withIdentifier: "MyCell", for: indexPath as IndexPath)
    let item = Array[indexPath.row]

    cell.textLabel?.text = item.value(forKey: "data") as? String

    return cell
}

我试过像

这样的东西
Array.reversed()

但Xcode告诉我结果未被使用。请帮我。感谢。

1 个答案:

答案 0 :(得分:2)

reversed不是变异方法,它将以相反的顺序返回对象,因此您需要使用该返回数组。

array = array.reversed()

注意:如果属性名称以小写字母开头,则会更好。