我目前正在Swift 2.0中开发和iOS应用程序,我遇到了以下问题:
我有一个自定义查询,用于获取填充UITableView的项目列表。当点击单元格时,我得到(values [indexPath.row])对象并将其转移到另一个视图控制器以显示以及项目列表(对于其他操作,例如滑动以移动到下一个)。
我的问题来自后台进程,它定期获取新数据并将其保存到Realm。
由于Realm保持良好且更新,因此indexPath.row将获取不同的值(由于自动更新程序,值列表在此期间已发生更改),从而导致显示的内容不完整。
Realm和更新程序都在工作,但这会给用户带来令人困惑的体验。
我错过了一些明显的东西吗?
非常感谢您的帮助!
PS:我也看过ABFRealmTableViewController,但我没有显示整个数据,而是显示已过滤(和有序)的子集。
答案 0 :(得分:1)
当发生写入事务(即更新)时,阻止此问题的最简单方法可能是observe notifications sent out by Realm并相应地更新您的UI:
// Observe Realm Notifications
let token = realm.addNotificationBlock { notification, realm in
viewController.updateUI()
}
答案 1 :(得分:0)