枚举
以下枚举在全局范围内可用。
-
用于存储和检索与
查看更多AnyRealmValue
属性关联的值的枚举。AnyRealmValue
还可以存储AnyRealmValue
的集合(列表、字典),这意味着您可以在AnyRealmValue
内拥有嵌套集合。声明
Swift
public enum AnyRealmValue : Hashable
extension AnyRealmValue: _QueryNumeric
extension AnyRealmValue: RealmCollectionValue
extension AnyRealmValue: RealmPropertyType
extension AnyRealmValue: MinMaxType
extension AnyRealmValue: AddableType
extension AnyRealmValue: SortableType
-
声明
Swift
@available(macOS 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *) public enum RealmPublishers
-
查看更多RealmMapChange
值封装有关 Realm 通知所报告的字典变更的信息。声明
Swift
@frozen public enum RealmMapChange<Collection> where Collection : RealmKeyedCollection
-
声明
Swift
@frozen public enum ObjectChange<T>
-
RealmCollectionChange
值封装有关 Realm 通知报告的collection变更的信息。更改信息有两种格式:集合中每种更改类型的行索引的简单数组,以及请求部分中适合直接传递给
UITableView
的批量更新方法的索引路径数组。.update
情况下的索引数组遵循UITableView
的批处理约定,并且可以在转换为索引路径后按原样传递给表视图的批量更新函数。 例如,对于简单的单节表视图,您可以执行以下操作:
查看更多self.notificationToken = results.observe { changes in switch changes { case .initial: // Results are now populated and can be accessed without blocking the UI self.tableView.reloadData() break case .update(_, let deletions, let insertions, let modifications): // Query results have changed, so apply them to the TableView self.tableView.beginUpdates() self.tableView.insertRows(at: insertions.map { IndexPath(row: $0, section: 0) }, with: .automatic) self.tableView.deleteRows(at: deletions.map { IndexPath(row: $0, section: 0) }, with: .automatic) self.tableView.reloadRows(at: modifications.map { IndexPath(row: $0, section: 0) }, with: .automatic) self.tableView.endUpdates() break case .error(let err): // An error occurred while opening the Realm file on the background worker thread fatalError("\(err)") break } }
声明
Swift
@frozen public enum RealmCollectionChange<CollectionType>
-
SectionedResultsChange
值封装有关 Realm 通知报告的分段结果变更的信息。第一次传递通知时,将为
查看更多.initial
,所有后续通知都将为.change()
,并提供有关自上次调用回调以来已更改内容的信息。 }声明
Swift
@frozen public enum SectionedResultsChange<Collection>