我如何与我刚刚使用presentViewController展示的视图进行交互?

时间:2013-07-30 13:13:16

标签: ios objective-c

我有一个用于将数据添加到表中的视图。我使用presentViewController显示此视图:

AddViewController *avc = [self.storyboard instantiateViewControllerWithIdentifier:@"addview"];
[self presentViewController:avc animated:YES completion:nil];

UINavigationController是显示添加控件的UIViewController的根视图控制器。

我从项目中的几个不同位置触发此UINavigationController,我希望每个地方都有略微不同的文字。我如何与我UIViewController的{​​{1}}进行互动,或根据调用的位置更改presentViewController

2 个答案:

答案 0 :(得分:1)

好的,您可以像这样访问导航控制器的rootView控制器:

UINavigationController *yourNavigationController = [self.storyboard instantiateViewControllerWithIdentifier:@"yourViewControllerID"];

YourRootController *yourRootController = (YourRootController*)[yourNavigationController topViewController];

yourRootController.someproperty = someValue

然后,只需更改您刚刚获得的视图控制器中的某些所需属性。 请告诉我你是否正在寻找这样的东西。

答案 1 :(得分:0)

UIViewController *controller= (UIViewController)[self.navigationController subviews] count-2 ];

controller是堆栈中倒数第二个视图控制器。这是一个叫做添加的人。

取决于[controler class]的值,您可以设置文字。