我有一个包含两个实体的核心数据模型,为了这篇文章,我将其称为Category和Items,Category是与Items有一对多关系的父实体。
在IB中我有一个NSTreeController和NSOutlineView来管理Category实体,这很有效。
我还有一个ArrayController,其Mode设置为Entity,Entity Name设置为Items,Content Set绑定设置为Tree Controller,Controller Controller为“selection”,Model Key Path设置为关系。
我已经通过在大纲视图中选择类别来测试所有这些工作,并在使用以下代码从树控制器更改选择时输出阵列控制器中可用的项目数:
(SWIFT):
@IBOutlet var itemsArrayController: NSArrayController!
@IBAction func logResult(sender: AnyObject) {
println("Items Array has \(itemsArrayController.content?.count) records")
// Print first item to console
var anItem : Items! = itemsArrayController.content?.objectAtIndex(0) as Items
if let something : Items = anItem? {
println(something.name)
}
}
现在我想将一个Table View连接到Array Controller,它将列出所选类别的所有项目。
所以如果我将Table View Cell的值绑定到 Items Array Controller.arrangedObjects.name 并单击RUN xcode开始编译,并且不会超过50%。活动监视器 - >内存显示“ibtooid”,在整个系统锁定之前一段时间内有5GB内存,我必须硬重置我的mac。即使我在Xcode中点击停止,ibtooid继续吃掉内存,停止硬重置的唯一方法就是杀掉那个进程,。
非常感谢任何帮助。 感谢
Xcode版本6.1(6A1046a)
答案 0 :(得分:0)
通过将表更改为基于单元格而不是基于视图来修复它。将提交Apple的错误。