我在我的mainViewControler中嵌入了一个子ViewControler,它显示了一个图形。主视图控制器包括输入字段和保存按钮。我希望在录制保存按钮时,让childViewControler中的图形重新加载其数据。childViewControler包含一个函数
func refresh() {
fetchTransactionsAndCalculateTotals()
generateChartData()
setChart()}
我想打电话给他。我已经设置了从主控制器到子控制器的分段,
enum Segues {
static let toInOutBar = "toInOutBars"
}
override func prepare(for segue: UIStoryboardSegue, sender: UIButton?) {
if segue.identifier == Segues.toInOutBar {
let destVC = segue.destination as! InOutBarViewController
destVC.refresh()
}
}
我很难做到这一点,我试图从myUIButton操作调用此函数,但没有成功。
感谢的支持
您应该在按钮的touchUpInside
操作上链接一个IBAction
,并使用children
属性获取您的子VC。
@IBAction func refreshClicked(_ sender: UIButton)
{
guard let vcChild = self.children.first as? InOutBarViewController else { return; }
vcChild.refresh()
}