【发布时间】:2013-11-20 11:46:13
【问题描述】:
我使用以下代码实例化并推送我的UIViewController:
RIYNetworkGameViewController *ngvc =
[[UIStoryboard storyboardWithName:@"Main" bundle:nil]
instantiateViewControllerWithIdentifier:@"networkGame"];
ngvc.food = 42;
[self.navigationController pushViewController:ngvc animated:YES];
除了实例化后将值 42 分配给属性,有没有办法传入该值以便在实例化期间可以使用它?我只使用storyboards,并没有任何nib 文件,所以我不确定调用了哪些方法来实例化UIViewController。
编辑:我在viewWillLayoutSubviews 中创建并呈现了一个 SKScene,因此我需要在调用 viewWillLayoutSubviews 之前获取数据。
【问题讨论】:
-
为什么在使用 Storyboard 的时候要手动推动控制器?
-
这个特定的视图控制器是为了响应正在创建的游戏中心比赛而创建的,所以我必须在运行时创建控制器。在 Game Center 创建比赛后,会调用一个委托方法来创建视图控制器。我不确定有没有办法用故事板做到这一点,有吗?
-
那你为什么不用 UIStoryboardSegue 的呢?
-
您可以使用 userdefault 或一些全局引用实例变量。但它不是标准代码。
-
我想避免使用全局引用变量或用户默认值。 @Akki - 我是使用 Storyboards / IB 的新手。 UIStoryboardSegue 比我现在做的更好吗?
标签: ios objective-c uiviewcontroller uistoryboard