如何在另一个视图控制器中使用核心数据编辑 Tableview 单元格数据

Posted

技术标签:

【中文标题】如何在另一个视图控制器中使用核心数据编辑 Tableview 单元格数据【英文标题】:How To Edit Tableview Cell Data with Core Data In Another View Controller 【发布时间】:2018-07-17 03:30:36 【问题描述】:

我有一个tableview,它的数据存储在core data 中,当点击tableviewCell 时,它会打开另一个带有labelviewController,上面有数据。我想在viewController 上有一个textfield 和一个button,当点击button 时,它会更新tableviewCell 数据并保存在core data 中。

这是我传递数据时的一些代码 Main View Controller:

func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath)

    var name2 = String()

    tableView.deselectRow(at: indexPath, animated: true)

    let name = itemName[indexPath.row]
    name2 = (name.value(forKey: "title") as? String)!

    let storyboard = UIStoryboard(name: "Main", bundle: nil)
    let secondVC = storyboard.instantiateViewController(withIdentifier: "secondView") as! SecondViewController
    secondVC.name = name2
    self.present(secondVC, animated: true, completion: nil)

这是在另一个视图控制器中

var name = ""

override func viewDidLoad() 
    super.viewDidLoad()
    nameLabel.text = name


现在我只需要能够从second view controller 编辑其中一个tableviewCells 并将其发送到第一个tableview 并更新core data

【问题讨论】:

【参考方案1】:

我建议您将第二个视图控制器中的数据保存到核心数据中,并在第一个视图控制器中获取相同的数据并显示在表格中。

【讨论】:

以上是关于如何在另一个视图控制器中使用核心数据编辑 Tableview 单元格数据的主要内容,如果未能解决你的问题,请参考以下文章

使用表格视图编辑核心数据中单个属性的正确方法

无法使用核心数据检索数据

核心数据:从详细视图编辑对象

如何在另一个视图中使用已经初始化的类?

如何从 SwiftUI 的详细信息视图(编辑项目视图)中删除核心数据条目?

iOS - 从一个视图控制器传递数据以在另一个视图控制器的 init 方法中使用