gpt4 book ai didi

ios - tableView 和 Realm 数据库之间的差异

转载 作者:行者123 更新时间:2023-11-28 18:28:55 24 4
gpt4 key购买 nike

在实现滑动删除功能时,我遇到了以下问题:当我删除项目时,数组中的最后一项占据它的位置。

例如,我有数组 [1,2,3,4,5]。删除 2(索引 1)后,数据库中的数组看起来是 [1,5,3,4]。但是表格 View 显示的一切都是正确的 [1,3,4,5]。为什么会这样?我希望 Realm 项目以这种方式保存 [1,3,4,5]。

下面是函数实现:

override func tableView(tableView: UITableView, commitEditingStyle editingStyle: UITableViewCellEditingStyle, forRowAtIndexPath indexPath: NSIndexPath) {
if editingStyle == .Delete {
try! realm.write {
let itemToDelete = items[indexPath.row]

realm.delete(itemToDelete)

}
tableView.deleteRowsAtIndexPaths([indexPath], withRowAnimation: .Top)
}
}

非常感谢您的帮助!

最佳答案

请记住,Results 不能保证保留插入顺序。出于性能原因,项目可能会重新排序以保持 Realm 文件较小或保持操作快速。

List 属性保证保留它们的插入顺序。

如果您想要稳定地排序您的结果,请确保对它们进行排序。

这在sorting 上的Realm 文档中有所介绍。 .

关于ios - tableView 和 Realm 数据库之间的差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40706958/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com