【发布时间】:2017-05-23 07:10:14
【问题描述】:
在这里重新提出问题,对代码进行一些修改:
我有一个名为 Galaxies 的类,每个类都有一个行星列表
class Galaxy: Object {
let planets = List<Planet>()
}
class Planet: Object {
dynamic var capitol = String()
dynamic var council = String()
dynamic var collective = String()
dynamic var signals = String()
}
我有 10 个视图控制器,每个视图控制器代表一个星系,其中包含该星系特有的各种行星。如何过滤特定星系的特定行星?
当我使用隐式解包的可选项实例化 Results<Galaxy>! 实例时,它会在第一个 Galaxy VC 中编译,因为我的 AppDelegate 中有起始数据。当我在第二个 Galaxy VC 中执行 let galaxy = Results<Galaxy>? = nil 时,集合视图变为空白。
这是有道理的,因为没有数据。
所以,我想我有两个问题:如何实例化 Results 对象并为每个没有初始数据的视图控制器进行过滤?
我试过galaxies = realm.objects(Galaxy.self).filter("planets == %@", firstPlanet).sorted(byKeyPath: "capitol", ascending: false)in viewDidLoad() 但这会崩溃:
libc++abi.dylib: terminating with uncaught exception of type NSException
最后,var galaxy = Results<Galaxy>() 引发异常cannot invoke initializer for type Results with no arguments。
【问题讨论】:
-
再问什么问题?如果您已经向 Stack Overflow 发布了一个问题,最好根据需要对该问题进行编辑,而不是创建一个完整的其他帖子。或者,如果引用不同但相关的帖子,链接到它也会有所帮助。
标签: ios swift uicollectionview realm filtering