我有 1 个表,我需要在其中比较值。如果它们不匹配,则突出显示那些表格视图单元格。
表有列
XXX 年年年
MH_01 MH_02
MH_02 MH_03
MH_04 MH_05
它需要检查的是 row[1]YYYY=row[2] XXX 如果不是,那么它应该连续突出显示该单元格。就像在这个例子中一样,它将突出显示(YYYY-(MH_03)和xxxx(MH_04)。
在模型对象上实现下一个和上一个条目的瞬态属性。然后在模型对象上创建另外两个瞬态属性以返回 NSColor 或显示单元格突出显示所需的任何内容。
然后,您可以在表的数据源中填充 next 和 prev 属性。如果您使用 NSArrayController 作为数据源,您可以轻松地继承 NSArrayController 来为您填充下一个和上一个。
-(NSArray *)arrangeObjects:(NSArray *)objects
{
NSArray * arrangedObjects = [super arrangeObjects:objects];
NSManagedObject * previousEntry;
for (NSManagedObject * entry in arrangedObjects)
{
[previousEntry setValue:entry forKey:@"nextEntry"];
[entry setValue:previousEntry forKey:@"prevEntry"];
previousEntry = entry;
}
return arrangedObjects;
}