- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有两个 View Controller ,它们是 VCA 和 VCB。我还有一个导航 Controller ,可以从 VCA 推送到 VCB。在VCA的prepareForSegue方法中,有如下一行代码:
- (void) prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
if ([segue.identifier isEqualToString:@"placePiece"]) {
NSLog(@"go to screen two");
}
}
在我的 VCB 中,我有以下两种方法:
- (void) willMoveToParentViewController:(UIViewController *)parent {
NSLog(@"will move back to screen one");
}
- (void) didMoveToParentViewController:(UIViewController *)parent {
NSLog(@"did move back to screen one");
}
我不明白的是,当我从 VCA 转到 VCB 时,我在控制台中收到以下消息:
2014-03-31 15:38:05.317 Li-Lab5[18865:60b] go to screen two
2014-03-31 15:38:05.318 Li-Lab5[18865:60b] will move back to screen one
2014-03-31 15:38:05.848 Li-Lab5[18865:60b] did move back to screen one
为什么这里调用了 willMoveToParentViewController
和 didMoveToParentViewController
方法?
此外,是否有一种用于 VCA 和 VCB 的方法,以便当 VCA 转到 VCB 时,调用 VCA 中的方法。当 VCB 返回到 VCA 时,VCB 中的一个方法被调用。我只是想用这些方法做一些阅读和写作。谢谢
最佳答案
可以在VCB的viewWillDisappear:
中设置一个全局的BOOL
变量为YES
,然后在VCA的viewWillAppear:
中设置一个全局的BOOL
变量>,如果变量是 YES
,那么您就从 VCB 转到了 VCA。只需确保在 VCA 的 viewDidAppear:
中将变量设置回 NO
。
关于ios - willMoveToParentViewController 和 didMoveToParentViewController,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22771769/
我有两个 View Controller ,它们是 VCA 和 VCB。我还有一个导航 Controller ,可以从 VCA 推送到 VCB。在VCA的prepareForSegue方法中,有如下一
关于 UIViewController 的 Apple 文档说: 如果您正在实现自己的容器 View Controller ,它必须在调用 removeFromParentViewController
XCode 文档说 如果您正在实现自己的容器 View Controller ,它必须调用 willMoveToParentViewController:调用 removeFromParentView
在 WWDC 2012 session 中标题为 iOS 上 View Controller 的演变 - (void)willMoveToParentViewController:(UIViewCon
我是一名优秀的程序员,十分优秀!