在目标视图控制器 viewWillAppear 中检测向后/弹出导航 [英] Detect backward/pop navigation in destination view controller viewWillAppear

查看:16
本文介绍了在目标视图控制器 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 中检测向后/弹出导航的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆