Swift:将NSNumber转换为NSString(NSNumber不是NSString的子类型)

时间:2014-12-17 21:15:19

标签: core-data swift

在我的应用中,我进入CoreData并抓取类型为Double的条目,然后我尝试将该值放入我的应用中的文本字段。

这看起来像

lengthTextField.text = lastSession.length但我收到错误NSNumber is not a subtype of NSString

lastSession.length的值为6.0以供参考。关于如何在我的文本字段中正确放置数据的任何建议?

谢谢!

2 个答案:

答案 0 :(得分:28)

在核心数据中,数字由NSNumber支持。您可以查看文档here

在swift中,您可以通过实例属性stringValue

访问该数字的字符串表示形式
lengthTextField.text = lastSession.length.stringValue

答案 1 :(得分:2)

在输出之前,您必须将NSNumber的doubleValue成员格式化为字符串。

let x:NSNumber = 6.0
let s:String = String(format:"%f", x.doubleValue) //formats the string to accept double/float
println(s)