回顾一个关于valueforkey的NSNumber

时间:2013-11-07 20:59:55

标签: ios core-data nsnumber

我正在尝试使用核心数据在我的应用程序的详细视图中显示NSNumber。目前我可以使用字符串值,但是在尝试调用nsnumber时我感到难过。我得到一个[__NSCFNumber长度]错误,我理解是因为我需要将nsnumber转换为字符串?我将如何更改以下代码? weightkg是包含nsnumber的实体属性。

   [self.kgLabel setText:[self.device valueForKey:@"weightkg"]];

提前谢谢。

4 个答案:

答案 0 :(得分:0)

试试这个:

[self.kgLabel setText:[[self.device valueForKey:@"weightkg"] stringValue]];

答案 1 :(得分:0)

试试这个:

[self.kgLabel setText:[[self.device valueForKey:@"weighting"] stringValue]];

答案 2 :(得分:0)

这对你有用吗?

[self.kgLabel setText:[[self.device valueForKey:@"weightkg"]] stringValue];

更新:我会再投入一个:

[self.kgLabel setText:[NSString stringWithFormat:@"%@ kg" [self.device valueForKey:@"weightkg"]];

这样你就会得到更多。

答案 3 :(得分:0)

如果仅对stringValue使用NSNumber,则无法控制格式设置。相反,您应该确保根据需要转换为正确的原始数据类型和格式:

kgLabel.text = [NSString stringWithFormat:@"%.0f kg", number.floatValue];
// --> "23 kg"

kgLabel.text = [NSString stringWithFormat:@"%.2f kg", number.floatValue];
// --> "23.43 kg"