gpt4 book ai didi

ios - 无法访问 NSManagedObject 子类的属性(给出 EXC_BAD_ACCESS)

转载 作者:搜寻专家 更新时间:2023-10-30 23:15:28 25 4
gpt4 key购买 nike

我是 Core Data with Swift 的菜鸟。我有一个 NSManagedObject 类,如下所示:

import Foundation
import CoreData

class Polls: NSManagedObject {

@NSManaged var title: String
@NSManaged var pollDescription: String

}

在 UITableViewController 子类中,我有一个获取这些对象的方法,如下所示:

func refreshPolls()
{
//do the query to populate the array
let req = NSFetchRequest(entityName: "Polls")
self.polls = self.managedObjectContext?.executeFetchRequest(req, error: nil) as! [Polls]
println(polls.count)
}

请注意,self.polls 被定义为“投票”对象的数组。

现在,在 cellForRowAtIndexPath: 中,我只是这样做:

override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
var cell:UITableViewCell
if indexPath.row==0
{
cell = tableView.dequeueReusableCellWithIdentifier("EditPollCell") as! UITableViewCell
}
else
{

let poll:Polls = self.polls[indexPath.row-1] as Polls
//println(poll.title) //fails with EXC_BAD_ACCESS

cell = tableView.dequeueReusableCellWithIdentifier("PollCell") as! UITableViewCell
//cell.textLabel?.text = (poll.valueForKey("title") as! String)


}

return cell

注释 println 失败并返回 EXC_BAD_ACCESS。没有给出额外的错误信息,向 Polls 类的属性添加“dynamic”没有任何区别。

为什么我不能访问 Polls 对象的属性?使用 valueForKey 方法失败并显示消息 “在展开可选时意外发现一个 nil 值”,即使 title 属性有一个值。

最佳答案

我假设您的 Polls 数组是 NSManagedObject 数组。要检查这一点,请尝试替换:

//println(poll.title) //fails with EXC_BAD_ACCESS

println(poll.valueForKey("title"))

如果这有帮助,您可以查看此答案

CoreData: warning: Unable to load class named

关于ios - 无法访问 NSManagedObject 子类的属性(给出 EXC_BAD_ACCESS),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32114740/

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