我已经将名称和描述的两个属性定义为名为Forms
的实体,我希望在第一个标签中检索名称,并在tableview的行中检索第二个标签中的desc
我做了什么
我目前检索的是什么
我希望这些所有值都打印在每个单元格中,而不是每次都重复单个单元格
let context = appDel.persistentContainer.viewContext
let results = try! context.fetch(request)
for result in results as! [NSManagedObject] {
let formNameIs = result.value(forKey: "formName") as? String
let formDescIs = result.value(forKey: "formDesc") as? String
cell.titleLabel.text = formNameIs!
cell.descLabel.text = formDescIs
print(formNameIs!, formDescIs!)
}
看起来你误解了tableViews是如何工作的。您不需要遍历所有对象;您应该找到该行的正确对象(如indexPath
参数中所示),并使用该对象的属性值设置标签。
因此,使results
数组成为视图控制器的属性:
var results : [NSManagedObject] = []
在qazxsw poi中,从Core Data填充你的qazxsw poi数组:
viewDidLoad
在tableView的results
方法中,返回...
// presumably you have code to define the fetch request
let context = appDel.persistentContainer.viewContext
results = try! context.fetch(request)
中的对象计数
numberOfRowsInSection
在tableView的results
方法中,使用return results.count
参数从cellForRowAt:
数组中找到正确的对象:
results