的常见做法是使用委托模式或闭包(闭包通常在Swift中使用)。下面是一个简单的示例:
protocol UpdateDataDelegate: class {
func updateData(with newData: [String])
}
class DataSourceViewController: UIViewController {
weak var delegate: UpdateDataDelegate?
// 其他代码...
}
class DataSourceViewController: UIViewController {
// ...
func updateData() {
let newData = ["Data 1", "Data 2", "Data 3"]
delegate?.updateData(with: newData)
}
// ...
}
class TargetViewController: UIViewController, UpdateDataDelegate {
// ...
func updateData(with newData: [String]) {
// 更新UITableView的数据源
// tableViewData = newData
// tableView.reloadData()
}
// ...
}
class TargetViewController: UIViewController {
// ...
func showDataSourceView() {
let dataSourceVC = DataSourceViewController()
dataSourceVC.delegate = self
present(dataSourceVC, animated: true, completion: nil)
}
// ...
}
这样,当从数据源视图控制器中调用updateData()
方法时,目标视图控制器的updateData(with:)
方法会被触发,从而更新UITableView的数据源。
推荐的腾讯云相关产品:TencentDB(数据库服务)、Tencent Cloud Virtual Machine(云服务器)等。你可以在腾讯云官网找到这些产品的详细介绍和相关链接。
领取专属 10元无门槛券
手把手带您无忧上云