我有NSString的类别使用此方法:NSNumberFormatter问题与numberFromString
-(NSNumber *)numberValue
{
if (!nfStr)
{
nfStr = [[NSNumberFormatter alloc] init];
}
NSLocale *current = [NSLocale autoupdatingCurrentLocale];
[nfStr setLocale:current];
[nfStr setDecimalSeparator:[current objectForKey:NSLocaleDecimalSeparator]];
[nfStr setGroupingSeparator:[current objectForKey:NSLocaleGroupingSeparator]];
return [nfStr numberFromString:self];
}
我现在的locale是它-IT(小数点分隔符 “” 分组分隔符 “”)
时我用stringFromNumber用的NSNumber 90000的NumberFormatter返回正确格式化字符串“90.000”
当一个文本框我写的字符串“90.000”的回报的NumberFormatter零,而不是NSNumber的90000
为什么?
感谢
编辑: 文本字段委托
-(void)textFieldDidEndEditing:(UITextField *)textField
{
myObject.r.qtaOm = [Trim(textField.text) numberValue];
}
你能后的代码如何与文本框使用它吗? –
已发布,是textfield delgate –
即使使用textfield,它也适用于我 - 修剪宏是什么 - 也许尝试不用它? –