gpt4 book ai didi

ios - 访问 NSManagedObject 的计算属性时出现 EXC_BAD_ACCESS

转载 作者:搜寻专家 更新时间:2023-10-31 22:35:06 24 4
gpt4 key购买 nike

我定义了一个具有计算属性的类。当我尝试访问我的代码中的属性时,我得到了 EXC_BAD_ACCESS。我在属性的 getter 中设置了一个断点,并注意到它从未被调用过。我不知道是什么原因造成的。我可以访问该对象的其他属性。

这是代码

import UIKit
import CoreData

@objc(Person)

class Person: NSManagedObject {

struct Keys {
static let Name = "name"
static let ProfilePath = "profile_path"
static let Movies = "movies"
static let ID = "id"
}

@NSManaged var name: String
@NSManaged var id: NSNumber
@NSManaged var imagePath: String?
@NSManaged var movies: [Movie]

override init(entity: NSEntityDescription, insertIntoManagedObjectContext context: NSManagedObjectContext?) {
super.init(entity: entity, insertIntoManagedObjectContext: context)
}



init(dictionary: [String : AnyObject], context: NSManagedObjectContext) {

let entity = NSEntityDescription.entityForName("Person", inManagedObjectContext: context)!

super.init(entity: entity, insertIntoManagedObjectContext: context)



name = dictionary[Keys.Name] as! String
id = dictionary[Keys.ID] as! Int
imagePath = dictionary[Keys.ProfilePath] as? String
}

var image: UIImage? {
get {
return TheMovieDB.Caches.imageCache.imageWithIdentifier(imagePath)
}

set {
TheMovieDB.Caches.imageCache.storeImage(image, withIdentifier: imagePath!)
}
}
}

这就是我尝试访问图像属性并获取

Execution was interrupted, reason: EXC_BAD_ACCESS (code=1, address=0x20)

当我执行 actor.image 时。actorPerson 类的对象,并且已正确初始化。我在 image 属性的 getter 中放置了一个断点,但它从未被调用过。

if let localImage = actor.image {
cell.actorImageView.image = localImage
} else if actor.imagePath == nil || actor.imagePath == "" {
cell.actorImageView.image = UIImage(named: "personNoImage")
}

我做错了什么?

最佳答案

我刚刚发现问题,我没有在数据模型检查器中为实体设置类。就这样解决了

关于ios - 访问 NSManagedObject 的计算属性时出现 EXC_BAD_ACCESS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31052701/

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