我的NSTextField包含“1.67”或“0.05”等双打。
当我尝试以下操作时:
console.log([priceChange doubleValue]); //priceChange is an NSTextField
//Apply styles
if([priceChange doubleValue] > 0)
[priceChange setTextColor:[NSColor greenColor]];
else if([priceChange doubleValue] < 0)
[priceChange setTextColor:[NSColor redColor]];
else if([priceChange doubleValue] == 0)
[priceChange setTextColor:[NSColor blackColor]];
priceChange总是等于0,即使该值是其他值。我怎样才能正确获得priceChange的值?
答案 0 :(得分:0)
试试[[priceChange stringValue] floatValue]
。还要确保字符串中的数字前面没有空格,否则floatValue将返回0.
答案 1 :(得分:0)
这正是NSNumberFormatter
的用途。为您的字段提供合适的格式化程序(在IB中轻松添加/设置),-objectValue将开始返回NSNumber
。