我不确定如何解决该错误。

这里有错误

Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[SubResultComponent setDate:]: unrecognized selector sent to instance 0x60000046b640'


这是SubResultComponent

extension SubResultComponent {

    @nonobjc public class func fetchRequest() -> NSFetchRequest<SubResultComponent> {
        return NSFetchRequest<SubResultComponent>(entityName: "SubResultComponent")
    }

    @NSManaged public var date: String?
    @NSManaged public var price: NSDecimalNumber?

}


我在这里打电话设定日期

func updateUI() {

    guard rateLog != nil else {

        return
    }

    // Update cell UI
    self.dateLabel.text = rateLog?.date
    self.priceLabel.text = numberFormatter.string(from: (rateLog?.price)!)
}

最佳答案

@NSManaged的行为类似于dynamic的目标c版本;向编译器保证对象将在运行时具有那些属性。它实际上并不具有这些属性。为此,需要在核心数据模型文件中正确设置这些属性。使用编辑器的“创建NSManagedObject子类...”选项可以极大地帮助您使代码和模型保持同步。

关于swift - 未捕获的异常'NSInvalidArgumentException',原因:'-[SubResultComponent setDate:]:无法识别的选择器已发送到实例0x60000046b640',我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50536410/

10-08 21:04