我在TableViewController的单元格中有一个图形视图,我希望将一个数组从TableViewController传递给该视图。我该如何解决这个问题?
您必须先绕过数据到单元格,然后再到图形视图。试试看:
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的示例,了解该方法如何实际工作。