引き続き NSFormatter。
#attributedStringForObjectValue:withDefaultAttributes: をオーバーライドすると、NSAttributedStringで表現ができる。前回のサンプルに文字色を赤くするようにメソッドを追加してみた。
- (NSAttributedString *)attributedStringForObjectValue:(id)anObject withDefaultAttributes:(NSDictionary *)attributes
{
[attributes setValue:[NSColor redColor] forKey:NSForegroundColorAttributeName];
NSAttributedString* attr_str = [[NSAttributedString alloc]
initWithString:[NSString stringWithFormat:@"%x", [anObject intValue]]
attributes:attributes];
return attr_str;
}
するとこんな感じ。
このメソッドを使うとマイナス値は赤など任意の修飾ができる。