从 uiviewcontroller 引用 uiviewtablecontroller
Reference a uiviewtablecontroller from uiviewcontroller
我有一个名为 currentViewController 的 属性,它指向 UIViewController 或 UITableViewController,具体取决于 UISegmentedControl 中的哪个段处于活动状态。
如果currentViewController恰好指向UITableViewController,我可以通过
将UITableView变为编辑模式
[self.currentViewController setEditing:YES animated:YES];
但是,我现在想 运行 在 tableView 上重新加载数据。我试过这个,
[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];
}
我有一个名为 currentViewController 的 属性,它指向 UIViewController 或 UITableViewController,具体取决于 UISegmentedControl 中的哪个段处于活动状态。
如果currentViewController恰好指向UITableViewController,我可以通过
将UITableView变为编辑模式[self.currentViewController setEditing:YES animated:YES];
但是,我现在想 运行 在 tableView 上重新加载数据。我试过这个,
[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];
}