Detect backward/pop navigation in destination view controller viewWillAppear(在目标视图控制器 viewWillAppear 中检测向后/弹出导航)
问题描述
有许多众所周知的解决方案用于检测视图控制器何时在向后导航过程中从屏幕上消失,由 UINavigationController 管理(即当视图控制器正在从导航堆栈中弹出).换句话说,在源视图控制器中检测向后导航.
There are a number of well known solutions for detecting when a view controller is in the process of disappearing off the screen in the process of a backwards navigation, managed by a UINavigationController (i.e. when a view controller is being popped off the navigation stack). In other words detecting a backwards navigation within the source view controller.
相比之下,我需要在 destination 视图控制器的 viewWillAppear 中检测向后导航.或者换一种说法,检测视图控制器何时将作为 UINavigationController 弹出的结果显示.
In contrast, I need to detect a backwards navigation within viewWillAppear for the destination view controller. Or to put it another way, detect when a view controller is about to be displayed as a result of a UINavigationController pop.
实现这一目标的最简洁/最简单的方法是什么?实现 UINavigationControllerDelegate 并设置标志可能是一种方法,但如果可能的话,宁愿避免可变状态.
What is the cleanest/simplest way to achieve this? Implementing UINavigationControllerDelegate and setting a flag might be one approach, but would rather avoid mutable state if possible.
我没有使用 Storyboard 来管理这两个屏幕之间的过渡.
I am not using Storyboards to manage the transition between these two screens.
推荐答案
查看UIViewController的这个属性:P
Checkout this property of UIViewController :P
isMovingToParentViewController
isMovingFromParentViewController
这篇关于在目标视图控制器 viewWillAppear 中检测向后/弹出导航的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:在目标视图控制器 viewWillAppear 中检测向后/弹出导航
基础教程推荐
- AdMob 广告未在模拟器中显示 2022-01-01
- NSString intValue 不能用于检索电话号码 2022-01-01
- 如何从 logcat 中删除旧数据? 2022-01-01
- iOS4 创建后台定时器 2022-01-01
- 通过重定向链接在 Google Play 中打开应用 2022-01-01
- Cocos2d iPhone 非矩形精灵触摸检测 2022-01-01
- iPhone - 获取给定地点/时区的当前日期和时间并将其与同一地点的另一个日期/时间进行比较的正确方法 2022-01-01
- navigator.geolocation.getCurrentPosition 在 Android 浏览器上 2022-01-01
- Android:getLastKnownLocation(LocationManager.NETWORK_PROVIDER 2022-01-01
- libGDX 从精灵或纹理中获取像素颜色 2022-01-01
