【发布时间】:2016-11-23 22:50:03
【问题描述】:
现在我有 3 个这样的视图控制器:
HomeViewcontroller = VC1.
Viewcontroller2 = VC2 --> has a table view with cells on it.
Viewcontroller3 = VC3 --> allows me to edit each cell in VC2 or delete.
我在 Viewcontrollers 之间使用NavigationController,以获得漂亮的“返回”按钮 :)
假设我在 VC1 中,我按下一个按钮然后转到 VC2。 现在假设我有 4 个单元格。 我按 2 号单元格,然后转到 VC3,在那里我可以编辑单元格中的内容,甚至删除它。 这一切正常(经过测试)。
假设我想删除那个单元格。我在 VC3 上有一个按钮,我使用它并删除了单元格(经过测试并且工作正常)。
现在当我这样做时,我会像这样再次进入 VC2:
let viewController = storyboard?.instantiateViewController(withIdentifier: "VC2") as! VC2!
self.navigationController?.pushViewController(viewController!, animated: true)
问题是,当我这样做时,我去了 VC2,但我没有重新加载我的 tableView 有它应该(擦除的单元格它仍然存在)。
为了解决这个问题,我尝试在 VC2 的 viewDidLoad 中添加一些代码:
self.tableView.reloadData()
现在我设法做到了。我的意思是当我从 VC3 中删除一个单元格时,我被推送到 VC2 并且该单元格不存在。但是,如果我按下后退按钮,它会将我带到我已删除的上一个单元格,如果该单元格不再存在,我不希望它带我去那里。我想让它带我去 VC1(家)。
我怎样才能做到这一点?
也许我应该用另一种方式来做这件事,而不是那样推动?
【问题讨论】:
标签: swift uitableview swift3