使用核心数据swift ios获取实体的所有属性到tableview中的行中的标签

问题描述 投票:0回答:1

我已经将名称和描述的两个属性定义为名为Forms的实体,我希望在第一个标签中检索名称,并在tableview的行中检索第二个标签中的desc

我做了什么

enter image description here

我目前检索的是什么

enter image description here

我希望这些所有值都打印在每个单元格中,而不是每次都重复单个单元格

enter image description here

        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!)

}
ios swift uitableview core-data uilabel
1个回答
0
投票

看起来你误解了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
© www.soinside.com 2019 - 2024. All rights reserved.