Ios 在实例化ViewController之前更改/修改运行时用户定义的属性

Ios 在实例化ViewController之前更改/修改运行时用户定义的属性,ios,objective-c,uiviewcontroller,storyboard,uistoryboardsegue,Ios,Objective C,Uiviewcontroller,Storyboard,Uistoryboardsegue,简而言之,我想知道“如何在实例化视图控制器之前更改运行时用户定义的属性” 我为什么需要这个 我正在创建一个使用多个故事板的应用程序。我有一个主情节提要,其中UIViewController被指定为LinkViewController。它有一个string属性,它告诉它必须链接哪个故事板。现在我想做的是,我想在appDelegate中更改该属性&然后实例化viewController。到目前为止我还没能做到 这就是我正在做的: UIStoryboard *storyboard = [UIStory

简而言之,我想知道“如何在实例化视图控制器之前更改运行时用户定义的属性”
我为什么需要这个
我正在创建一个使用多个故事板的应用程序。我有一个主情节提要,其中UIViewController被指定为LinkViewController。它有一个string属性,它告诉它必须链接哪个故事板。现在我想做的是,我想在appDelegate中更改该属性&然后实例化viewController。到目前为止我还没能做到

这就是我正在做的:

UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main_iPhone" bundle:nil];         
EffLinkHomeVC *rootController = [storyboard instantiateViewControllerWithIdentifier:@"linkView"];
 rootController.storyBoardName = @"wxyzForiPhone";
 self.window.rootViewController = rootController;

我找到了其他几种解决方法。但我只是想更清楚地了解如何更改“运行时用户定义属性”。谢谢大家。:)

据我所知,您只能使用NIB中可用的代理/外部对象来执行此操作。 检查答案以查看其用法的一个很好的示例

从外观上看,该功能被隐藏或从故事板中删除。唯一有文档记录的配置方法是静态的。在您的情况下,它将使用您正在使用的故事板中的属性进行静态配置。如果这就足够了,您可以使用键值机制为每个情节提要静态地配置不同的值


除此之外,您只有普通的post init viewController方法。

意味着您要更改应用程序的rootViewController?不……我只是用自定义视图控制器的Storyboard名称启动应用程序,EffLinkHomeVC上有一个自定义NSString*属性或其他什么?是。。自定义NSString*only.and它将如何处理实例化后无法处理的属性?这不完全是我所要求的,但1代表新概念。