SplitViewController:在第一次加载/显示时将数据传递给DetailVC

时间:2013-02-24 17:23:27

标签: ios ipad uisplitviewcontroller

在当前的SplitViewController星座中,MasterVC在viewWillAppear中执行操作/计算。在DetailVC中需要该操作的结果才能正确加载其视图(DetailVC具有表视图)。

我不知道SplitViewController中的加载/出现顺序是什么(如果已知它可能有多可靠),但是有可能

  1. viewWillAppear
  2. 上的MasterVC中执行操作/计算
  3. 将信息传递给DetailVC(使用DetailVC的属性或使用协议)
  4. 当所需信息可用时,将加载DetailVC(例如,DetailVC的viewWillLoad / viewWillAppear)?

1 个答案:

答案 0 :(得分:2)

在启动时使用拆分视图控制器调用master和detail viewDidLoad方法。因此,您无法控制何时根据主视图控制器中发生的事情加载详细控制器。详细视图控制器的viewWillAppear在主视图viewWillAppear之前被称为之前,因为您只能在启动时看到详细视图(纵向)。因此,如果您希望在主控制器进行计算之前出现某些内容,您可能需要在详细视图控制器中有一个占位符视图。

仅当应用程序启动时iPad处于纵向方向时才会出现这种情况。如果您在启动应用程序时将其转向横向,那么您将获得主之前的viewDidLoad和viewWillAppear 详细调用这些方法之一。