如何解决TableView didselectrow 没有推送另一个视图
我也在尝试从带有 tableview 的 viewcontroller 推送到带有 tableview 的另一个视图,
func tableView(_ tableView: UITableView,didSelectRowAt indexPath: IndexPath) {
print("Clicke\(indexPath.row)")
guard let vc = storyboard?.instantiateViewController(withIdentifier: "SecAdsViewController") as? SecAdsViewController else { return }
vc.data = data[indexPath.row]
self.navigationController?.pushViewController(vc,animated: true)
}
代码看起来不错,故事板 id 也是正确的,但是当我点击单元格并且没有操作时它没有推送,控制台响应也很好
解决方法
正如您在评论中提到的,最好的解决方案是创建一个新的故事板。 试试这个
let storyboard = UIStoryboard(named: "Sections",bundle: "nil")
guard let vc = storyboard.instantiateViewController(withIdentifier: "SecAdsViewController") as? SecAdsViewController else { return }
vc.data = data[indexPath.row]
self.navigationController?.pushViewController(vc,animated: true)
此解决方案假设您在 Sections 故事板中没有 NavigationController,这在任何情况下都是您不想要的,因为您在另一个故事板中已经有了 NavigationController。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。