将核心数据中的 NSNumber 转换为 NSString
Posted
技术标签:
【中文标题】将核心数据中的 NSNumber 转换为 NSString【英文标题】:Convert NSNumber to NSString from Core Data 【发布时间】:2013-10-02 03:08:00 【问题描述】:好吧,在我的应用程序中的某个时间点,我有一个属性为 NSNumber
的对象,我使用 Core Data
保存这个对象,在 Core Data 架构中它被定义为 Double。
当我从核心数据中取回该对象时,例如值为 2.4,在 ios 模拟器中会出现此值,但当我在 iPad 中运行应用程序时,该值不会出现。
这是代码:
label.text = [product.price stringValue];
有人可以帮我吗?
【问题讨论】:
调试时product.price
是什么? label
是什么?
product.price 是 22.6,label.text 也是 22.6。
在 IOS 模拟器中工作正常,但是当我在 iPad 上运行时 label.text 为空
mb CoreData 在 iPad 上也是空的?
不,它不是空的,我可以从 CoreData 获取我的对象,并且我还有其他属性。我使用 NSlog,我可以在控制台上看到它的值。
【参考方案1】:
你可以试一试吗,
label.text = [NSString stringWithFormat:@"%@",product.price];
【讨论】:
我也试过这种方式,但是现在label.text中的结果是(null)。 尝试检查类类型 [product.price isKindOfClass:[NSNumber class]];【参考方案2】:这个怎么样
NSString *convertedString = [product.price stringValue];
label.text = convertedString;
【讨论】:
以上是关于将核心数据中的 NSNumber 转换为 NSString的主要内容,如果未能解决你的问题,请参考以下文章
我应该如何对我的核心数据实体中的 NSNumber 属性执行计算/更新?
在 CoreData 实体中将属性从 NSNumber 转换为 NSString - LightWeightMigration