1

我有(例如)一张桌子,里面有汽车。每辆汽车都有一个名字、颜色和里程。

我可以有一个文本字段,使用界面生成器中的绑定显示所有汽车的总里程:

值 - 绑定到:汽车阵列 Controller.arrangedObjects.@sum.mielage

但是,我想要单独的方框来显示红色汽车和蓝色汽车的总里程。我知道我可以使用谓词来过滤数组,例如:

NSPredicate *bluePredicate = [NSPredicate predicateWithFormat:@"color like blue"];

NSArray *blueCars = [[carArrayController arrangedObjects] filteredArrayUsingPredicate:bluePredicate];

NSNumber *blueMileage = [blueFilteredArray valueForKeyPath:@"@sum.mileage"];

但我不想这样做并且必须为文本框编写 IBOutlets 代码。如果可能的话,我想纯粹在 IB 中做。

有任何想法吗??

干杯,奥利

4

2 回答 2

0

那么,为什么不为每种汽车颜色创建一个单独的数组控制器呢?或者这也是可变的?

如果汽车颜色是可变的,最好的方法可能仍然是以编程方式进行。

于 2010-09-11T14:31:11.767 回答
-1

不要做很多控制器。我认为最优雅的解决方案是继承 nsarraycontroller 并以某种方式添加对“带有谓词的排列对象”的支持

于 2010-09-12T13:39:08.120 回答