将表视图放入容器视图中swift 3
问题描述:
我有2个分段控制按钮。 “苹果”和“橙色”分段按钮。 我把表格视图放在里面,当用户点击“Apple”时,Apple Table View会出现。
将表视图放入容器视图中swift 3
我把另一个“容器”视图(命名为:“橙色容器视图”),当用户点击“橙色”选项卡时,它会显示出来。
Container View有子视图控制器。所以,我把名为Orange TableView的“Table View”放在子视图控制器中。
问题是,当我点击“Apple”选项卡时,Apple Table View行立即出现,但当我点击Orange选项卡时,Orange Table View不会立即显示。
如何从儿童视图控制器重新加载表格以便在点击“橙色”选项卡时立即显示。
我试过了“Dispatch”方法。我不知道如何编写子视图控制器的表重载代码。
[UPDATE:解决的问题]
我添加在父视图控制器以下代码。
NotificationCenter.default.addObserver(self, selector: #selector(loadList), name: NSNotification.Name(rawValue: "load"), object: nil)
func loadList(){
//load data here
self.OrangeContainerView.reloadInputViews()
}
我把下面的代码放在子视图控制器中。
NotificationCenter.default.post(name: NSNotification.Name(rawValue: "load"), object: nil)
答
上段控制从故事板添加操作该方法
@IBAction func segmentChanged(_ sender: UISegmentedControl) {
let orageViewController = self.childViewControllers[sender.selectedSegmentIndex] as! OrageViewController
orageViewController.updateTable()
}
现在updateTable()是在OrageViewController
func updateTable(){
yourTableView.reloadData()
}
在乌尔子视图控制器(OrageViewController) 该方法