我正在尝试显示 NSNumber 在我使用核心数据的应用程序的详细信息中。目前,我可以使用字符串值来使用它,但是当我试图召回NSNUMBER时,我很难过。我得到[__nscfnumber长度]错误,我知道这是因为我需要将nsnumber转换为字符串?我将如何更改以下代码进行操作? weightkg 是包含的实体属性 nsnumber.

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

先感谢您。

有帮助吗?

解决方案

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

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

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

其他提示

尝试这个:

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

这个适合您吗?

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

更新: 我会再扔一个:

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

这样,您将获得更多。

尝试这个:

[self.kgLabel setText:[[self.device valueForKey:@"weightkg"] stringValue]];
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top