B K*_* K. -4 uitableview uinavigationcontroller pushviewcontroller ios swift
使用UITableviewcell类来显示表格列表的单元格。我想使用“ navigationController?.pushViewController”从一个屏幕重定向到另一个屏幕,但它在表格单元格类中不支持。那么我如何UIViewcontroller使用pushViewController从表格单元格移动。
我的代码是:
class TableCell: UITableViewCell
{
let storyBoard : UIStoryboard = UIStoryboard(name: "SubMain", bundle:nil)
let nextViewController = storyBoard.instantiateViewController(withIdentifier: "DetailReport") as! DetailReport
nextViewController.aryOfResultList = aryForCreateJSONResult
cell.inputViewController?.navigationController?.pushViewController(nextViewController, animated: true)
}
Run Code Online (Sandbox Code Playgroud)
但它不起作用。请给我解决我的问题
在单元格中声明一个名为 的变量var parent: UIViewController?。在父控制器的函数中cellForRow,
cell.parent = self
Run Code Online (Sandbox Code Playgroud)
现在在单元格中你可以打电话
parent?.navigationController.pushViewController
Run Code Online (Sandbox Code Playgroud)
如果您想要的只是在录制单元格时推送视图控制器,则更新,您可以在父控制器中执行以下操作:
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
self.navigationController?.pushViewController(nextViewController, animated: true)
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2963 次 |
| 最近记录: |