简而言之,我想知道“如何在实例化View Controller之前更改运行时用户定义的属性”
为什么我需要这个
我正在创建一个使用多个故事板的应用程序。我有一个主要的故事板,其中UIViewController被指定为LinkViewController。它有一个字符串属性,告诉它必须链接哪个故事板。现在我想要做的是,我想在appDelegate&更改该属性。然后实例化viewController。到目前为止还没能做到。
这就是我在做的事情:
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main_iPhone" bundle:nil];
EffLinkHomeVC *rootController = [storyboard instantiateViewControllerWithIdentifier:@"linkView"];
rootController.storyBoardName = @"wxyzForiPhone";
self.window.rootViewController = rootController;
我找到了其他几种解决方法。但我只想更清楚地了解如何更改“运行时用户定义的属性”。谢谢你们。 :)
答案 0 :(得分:1)
据我所知,你只能使用nib中可用的代理/外部对象来执行此操作。 检查答案here以查看其用法的一个很好的示例。
从外观上看,此功能隐藏在故事板中或从故事板中删除。唯一记录的配置方法是静态的。在您的情况下,它将使用您正在使用的故事板中的属性进行静态配置。如果这样就足够了,您可以使用键值机制为每个故事板静态配置不同的值。
除此之外,你只有普通的post init viewController方法。