gpt4 book ai didi

ios - 在 Swift 中关闭模态呈现的 View Controller 后,如何重新加载 ViewController?

转载 作者:可可西里 更新时间:2023-11-01 05:28:23 24 4
gpt4 key购买 nike

我有第一个 tableViewController,它在单击单元格时打开第二个 tableViewcontroller。第二个 View Controller 以模态方式呈现(Show Detail segue)并被关闭:

self.dismissViewControllerAnimated(true, completion: {})

此时,第二个 View Controller 滑开并显示其下方的第一个 View Controller 。然后我想重新加载第一个 View Controller 。我知道这可能需要使用委托(delegate)函数,但不确定具体如何实现它

最佳答案

swift 5:

您可以访问呈现 View Controller (presentingViewController) 属性并使用它在 View 消失时重新加载 TableView 。

class: FirstViewController {
var tableView: UITableView

present(SecondViewController(), animated: true, completion: nil)
}

在您的第二个 View Controller 中,您可以在 viewWillDisappear 方法中添加以下代码:

class SecondViewController {
override func viewWillDisappear(_ animated: Bool) {
super.viewWillDisappear(animated)

if let firstVC = presentingViewController as? FirstViewController {
DispatchQueue.main.async {
firstVC.tableView.reloadData()
}
}
}
}

当您关闭 SecondViewController 时,FirstViewController 的 tableview 将重新加载。

关于ios - 在 Swift 中关闭模态呈现的 View Controller 后,如何重新加载 ViewController?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28706877/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com