Swift中从UITableViewCell推送到ViewController


要从UITableViewCell创建一个跳转到另一个视图控制器的segue,我们将像任何其他ViewController到ViewController的segue一样进行操作。我们将通过一个例子来演示。

  • 首先创建一个项目,从故事板中删除视图控制器,并在故事板中添加一个表格视图控制器和一个视图控制器。

  • 默认情况下,表格视图控制器中将有一个原型单元格。单击它,转到其属性检查器,并将其标识符设置为“cell”。

  • 现在从原型单元格中,按住control键并拖动到第二个视图控制器,然后从中选择“show”。

  • 完成上述步骤后,故事板应如下所示。

  • 将故事板ID VC2赋予我们在故事板中添加的视图控制器。

  • 为表格视图控制器创建一个类。

现在在表格视图类中,添加以下代码:

override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
   let cell = tableView.dequeueReusableCell(withIdentifier: "cell")
   cell?.textLabel?.text = "\(indexPath.row)"
   return cell!
}
override func numberOfSections(in tableView: UITableView) -> Int {
   return 1
}
override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
   return 5
}

这应该使表格返回1个部分和5行,每行的标题应为行号。现在,如果您希望在segue发生时执行某些操作,您可以在下面提到的方法中执行。

override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
   if segue.identifier == "segueID" {
      // perform custom segue operation.
   }
}

当我们运行以上代码并点击任何单元格时,结果如下。

更新于:2020年6月30日

640 次浏览

启动你的职业生涯

通过完成课程获得认证

开始学习
广告