gpt4 book ai didi

objective-c - 将 NSDecimalNumber 显示为 IB 中的货币

转载 作者:行者123 更新时间:2023-12-03 16:33:38 24 4
gpt4 key购买 nike

我有一个带有属性数量的核心数据实体,它是一个 NSDecimalNumber。对于此属性,实体的类有一个使用 NSDecimalNumber 作为参数定义的方法。

在 Interface Builder 中,我将一个表列绑定(bind)到此属性(使用 NSArrayController),并在列的单元格上放置一个 NSNumberFormatter。格式化程序在 IB 中配置为“货币”。

现在,当我尝试输入数字时,出现以下错误:

-[NSCFNumber decimalNumberBySubtracting:]: unrecognized selector sent to instance 0x1001d5590

显然我的 setter 方法正在接收常规的 NSNumber 而不是 NSDecimalNumber。我可以以不同的方式配置我的格式化程序,也许是在代码中而不是 IB 中,或者是添加一个带有 NSNumber 作为参数的附加 setter 的唯一选项?

最佳答案

Core Data 不存储 NSDecimalNumber,仅存储 NSNumberNSNumber 没有被调用的方法。

您需要更改实体定义以使用 NSNumber 或构建自己的 NSValueTransformer 以将 NSDecimalNumber 存储在 Core Data 中。

请在此处查看有关属性的更多详细信息:http://developer.apple.com/library/ios/ipad/#documentation/Cocoa/Conceptual/CoreData/Articles/cdMOM.html%23//apple_ref/doc/uid/TP40002328-SW1

关于objective-c - 将 NSDecimalNumber 显示为 IB 中的货币,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5208383/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com