限制NSArrayController中的对象数

时间:2009-03-29 11:28:53

标签: objective-c cocoa key-value-coding

我正在尝试在我的应用中创建某种“前25名”列表。我已经使用NSPredicate来过滤数组控制器的内容,但我想将结果数量限制为只有25个对象。我怎么能这样做?

2 个答案:

答案 0 :(得分:3)

将排序描述符添加到同一个数组控制器,将其选择索引设置为范围{ 0, 25 },然后绑定到(或直接访问)其selection或其selectedObjects

答案 1 :(得分:2)

另一种策略是子类化NSArrayController并覆盖arrangeObjects以返回类似[[super arrangedObjects] subarrayWithRange:NSMakeRange( 0, 25 )];的内容(您可能希望首先检查数组的长度)。当然,这个阵列控制器只适用于前25名,而且在你的应用程序中没有其他地方。