gpt4 book ai didi

iOS 10 Xcode 8 - 迁移到 Swift 3 和 Date

转载 作者:行者123 更新时间:2023-11-28 06:32:49 24 4
gpt4 key购买 nike

我正在将一个 iOS 应用程序从 swift 2 迁移到 swift 3,我遇到了这个我不明白的错误,我不确定该怎么做。

当我尝试读取名为 dateApproved 但不是 dateCreated 的属性时,会出现问题。

print("dateApproved: \(cEntity.dateApproved)")
print("dateCreated: \(cEntity.dateCreated)")

实体类

@objc(entity)
open class Entity: NSManagedObject {

...
@NSManaged var dateApproved: Date
@NSManaged var dateCreated: Date
...

在检查属性 cEntity 后,我可以看到

dateApproved = nil;
dateCreated = "2016-08-24 22:20:38 +0000";

这是错误的截图

enter image description here

注意:它以前可以工作,但它不再工作了,因为我已经迁移了所有代码以使其与 Swift 3 兼容。

能否就如何解决/跟踪此问题给我一些建议。非常感谢。

最佳答案

实例变量 dateApproved 被声明为非可选变量,即 Swift 将假定它永远不会是 nil。然而,如调试器所示,它是nil

因此,更改声明以符合实际情况并使其成为可选的。

@NSManaged var dateApproved: Date?

关于iOS 10 Xcode 8 - 迁移到 Swift 3 和 Date,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39828936/

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