UISplitViewController 重新加载数据

Posted

技术标签:

【中文标题】UISplitViewController 重新加载数据【英文标题】:UISplitViewController reload data 【发布时间】:2011-03-07 13:40:30 【问题描述】:

如何从 UISplitViewController 子类调用函数到其他 ViewController。

我有一个显示拆分视图并在之后显示模式弹出窗口的应用程序。当弹出窗口关闭时,我需要重新加载数据。所以 appdelegate 看起来像这样:

[self.window addSubview:splitview.view];
[splitview presentModalViewController:popup_ctrl animated:YES];

在 TableViewController 上我创建了函数 reloadData;

我发现通过子类化 UISplitViewController,我可以使用 -(void)viewDidAppear:(BOOL)animated 来检测弹出窗口的关闭。我试过以下代码:

[[self.viewControllers objectAtIndex:0] reloadData];

但是它会因 NSInvalidArgumentException: unrecognized selector 而崩溃。

我必须修改什么才能使函数 reloadData 工作?

【问题讨论】:

您确定在发送 reloadData 消息时将表视图加载到拆分视图中吗? 我不知道,至少 viewControllers count == 2 【参考方案1】:

为什么不向您的 SplitViewController 显式添加一个引用您的 TableViewController 的属性?

那你可以说

mySplitViewController.TableViewController = myTableViewController;

后来调用

[mySplitViewController.TableViewController reloadData];

【讨论】:

以上是关于UISplitViewController 重新加载数据的主要内容,如果未能解决你的问题,请参考以下文章

UISplitViewController - 双列样式不起作用

UISplitViewController 一致分隔符

UISplitViewController - 并排或纵向叠加

在 UIViewControllers 和 UISplitViewController 之间导航 [关闭]

将 UIToolBar 放在 UISplitViewController 上方?

UISplitViewController + UISearchController 显示搜索细节