提问者:小点点

将数据从TableViewController传递到Controller单元格中的视图


我在TableViewController的单元格中有一个图形视图,我希望将一个数组从TableViewController传递给该视图。我该如何解决这个问题?


共2个答案

匿名用户

您必须先绕过数据到单元格,然后再到图形视图。试试看:

class GraphView: UIView {
    var points: [CGPoint]
}

class GraphCell: UITableViewCell {
    @IBOutlet weak var graphView: GraphView!

    func fillData(_ points: [CGPoint]) {
        graphView.point = points
    }
}

在您的控制器中:

class GraphTableViewController: UIViewController, UITableViewDataSource {
    var points: [CGPoint] = [
        CGPoint.zero,
        CGPoint(x: 100, y: 100)
    ]
    
    func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
        return 0
    }
    
    func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
        guard let cell = tableView.dequeueReusableCell(withIdentifier: "GraphCell") as? GraphCell else {
            return UITableViewCell()
        }
        cell.fillData(points)
        return cell
    }
}

匿名用户

实现这一目标的主要方法是使用函数tableView(_tableView:UITableView,cellForRowAt IndexPath:IndexPath)->UITableViewCell{},您可以在其中设置单个单元格,通常是在为索引路径取消单元格限制后进行类型转换。

如果您是iOS开发的新手,欢迎您!而且我敢肯定上面的帖子里不止一个让人迷惑的词,但是你很快就会习惯这些词的!

查看IOS的示例,了解该方法如何实际工作。