- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我有一个“所有者”类,它的列表属性是狗
class Owner: Object {
dynamic var name: String?
let list = List<RString>()
}
我在 Owner
列表中添加了一个通知 token
owners?.addNotificationBlock { [weak self] (changes: RealmCollectionChange) in
updateUI()
}
问题是,每当 RString
的属性发生变化,并且其中一位所有者的列表中有更改的 RString
时,就会触发此通知
我想要的是忽略 RString 对象发生的变化并避免触发通知
有没有办法像 objectChange
一样将“ignoringProperties”添加到 collectionChanges
中?或者任何其他解决方法?! 比如获取更改属性的名称并手动忽略它?
我在一个 Realm 官方视频中看到过这段代码,但无法为 collectionChanges 复制它
let token2 = state.addNotificationBlock(ignoringProperties: ["noisyProp"],
block: { change in
// handle change and avoid being notified for properties we don't care about
})
谢谢你的帮助
最佳答案
.update
RealmCollectionChange
的案例传入更新通知处理程序的枚举仅包含 Results
中包含的任何已修改对象的索引。从您的查询返回。因此,到目前为止,似乎无法阻止特定属性触发更新通知。
作为替代方案,您可以考虑通过创建单独的 Dog
以不同方式对数据建模。对象并给它一个 ownerId
属性(property)和移除狗list
来自您的所有者对象的属性(property)。这样您就可以避免在您的 Owner
上触发更新通知。拥有Dog
时的查询结果已修改。
关于swift - Realm RealmCollectionChange 获取更改的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46283522/
我注意到在 Realm Swift 中,有一个 RealmCollectionChange https://realm.io/docs/swift/latest/#realm-notification
我有一个“所有者”类,它的列表属性是狗 class Owner: Object { dynamic var name: String? let list = List() } 我在 O
这是我的设置: 在每个 UIViewController viewWillAppear 方法中,我从服务器获取数据。数据被解析为 Realm 对象,这些对象随后被添加到 Realm 数据库中。我已经设
如果 Realm Object 包含在 Realm.add(_:update:) 中,带有 update设置为 true,它的索引包含在结果 RealmCollectionChange 中,即使它的所
嗨,我正在尝试将 RealmNotifications 与更新 tableView 相结合,但由于某些原因,由于存在的部分数量与 Realm 通知发送的内容不一致,这会不断在 tableView 上产
我正在使用 Realm for Swift 并将数据加载到 UITableView 中。当我进入屏幕时,大约有 200 个数据对象正在逐渐下载,因此在显示 tableview 之后,我的测试中发生了很
我正在尝试在两个 SyncUser 之间交换权限,让他们从彼此的 Realm 读取对象。 我希望一旦权限被正确应用并确认对对方用户 Realm 的访问,对realm.objects(Object.Ty
我是一名优秀的程序员,十分优秀!