我有一个称为currentViewController的属性,该属性指向UIViewController或UITableViewController,具体取决于UISegmentedControl中的哪个段处于活动状态。
如果currentViewController恰好指向UITableViewController,则可以通过以下方式将UITableView更改为编辑模式:
[self.currentViewController setEditing:YES animated:YES];
但是,我现在想在tableView上运行reloadData。我试过了
[self.currentViewController reloadData];
失败了
关于如何在tableView上重新加载数据的任何想法。
最佳答案
[self.currentViewController setEditing:YES animated:YES];
效果很好,因为它同时为UIViewController(link)和UITableViewController定义(通过子类化UIViewController)。您真的想在tableView上调用reloadData
,而不是在两个ViewController上调用。
尝试类似的东西:
if([self.currentViewController isKindOfClass:[UITableViewController class]]){
UITableViewController *tableVC = (UITableViewController *)self.currentViewController;
[tableVC.tableView reloadData];
}
关于ios - 从uiviewcontroller引用uiviewtablecontroller,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28162753/