动态NSCombobox

时间:2012-11-26 09:02:43

标签: xcode core-data cocoa-bindings nsarraycontroller nscombobox

我正在创建一个应用程序,其中我有几个实体,现在我需要动态过滤第三个组合框的内容。我更好地解释自己。我有3个组合框(建筑物,楼层和部门),我想首先向我展示所有建筑物,但第二个应该只显示在建筑物的计划之前选择,最后我应该只选择建筑物的部门以及你选择的计划。我怎样才能做到这一点?为了简化附上一些照片。

enter image description here

enter image description here

enter image description here

1 个答案:

答案 0 :(得分:0)

如果对Core Data使用单次提取请求,则只需向下钻取谓词。

但是,您的关系设置不正确。例如,edificio中有Particelle个属性。如果它引用了一个建筑物,它应该是{em>关系到Edifici对象,而不是某种外键。 Core Data中没有外键,只是关系。

如果你这样做,使用NSFetchedResultsController一切都变得容易了。您现在可以简单地遍历对象图,而无需任何特定的提取。

该计划可能是这样的(可能需要更改顺序):

Anno <--->> Particella <---->> Edificio <---->> AreaRischio

现在您可以简单地告诉获取的结果控制器开始获取所有Anno个实体。然后用简单的点表示法向下钻取:

NSSet *listForNextTable = selectedAnnoObject.particelle; 

并进一步

NSSet *listForNextTable = selectedParticellaObject.edifici;

等。你知道,它变得非常简单。