一个星期前我对此感到有些不安,现在我的腰带上有一点点可可体验,我觉得我对可能发生的事情有所了解.
我正在创建一个由UINavigationController驱动的应用程序.在AppDelegate中,我使用"第1页"作为根视图控制器创建此类的实例.
UINavigationController *aNavigationController = [[UINavigationController alloc]
initWithRootViewController:page1ViewController];
Run Code Online (Sandbox Code Playgroud)
现在我在这里遇到问题.从"第1页"开始,我想使用在界面上滑动的模态视图控制器,然后在用户进行编辑后消失.我在Page1ViewController中使用这样的代码来做到这一点:
[self presentModalViewController:myModalViewController animated:YES];
Run Code Online (Sandbox Code Playgroud)
当模态视图控制器消失时,我希望"页面1"上的值根据用户在模态视图控制器中输入的内容进行更改.所以,我写了一些像这样的代码,它存在于模态视图控制器中:
[self.parentViewController dismissModalViewControllerAnimated:YES];
[self.parentViewController doSomethingPleaseWithSomeData:someData];
Run Code Online (Sandbox Code Playgroud)
第1页的更新没有发生,我花了很长时间才意识到"doSomethingPleaseWithSomeData"消息没有发送到Page1ViewController,而是发送到导航控制器.
使用导航控制器时总会出现这种情况吗?我是否可能配置不正确的东西?是否有一种简单的方法来获取我想要的View Controller(在本例中为Page1ViewController).