iOS Dev - 如何检测用户通过按 "Back"访问此 UIViewController

标签 ios iphone uiviewcontroller key back

我有一个包含 3 个选项卡的 iOS 应用:

  • 主页
  • 选项卡 1
  • 选项卡2

在“主页”中,用户可以导航到 View - UIViewcontroller1 - 以查看详细信息。当用户在 UIViewcontroller1 中按下“Back”返回“Home”时,我想在 Home viewDidLoad() 中检测到用户是通过按下“Back”来到这里的"在 UIViewcontroller1 中。

有没有一种简单的方法可以检测到这一点?

最佳答案

我知道有几种方法可以做到这一点,它们都不是您想要的,但它们可能会奏效。

首先,您可以检测 UIViewController1viewWillDisappear 的背面,如下所示:

if ([self.navigationController.viewControllers indexOfObject:self] == NSNotFound) {
    //Do what you want to do here
}

其次,您可以创建 Home UIViewController1 的委托(delegate)并调用您想要的任何方法。

第三,您可以在 Home 将 UIViewController1 压入堆栈时设置一个变量,并在 viewDidAppear 上检查它。

关于iOS Dev - 如何检测用户通过按 "Back"访问此 UIViewController,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22287379/

相关文章:

iOS swift 3 : Convert "yyyy-MM-dd' T'HH:mm:ssZ"format string to date object

Swift - 添加一个不与当前 Storyboard View 重叠的 UIView

ios - cocos2d Sprite 定位问题

iphone - 我到底必须在 viewDidUnload 中做什么?

iPhone HTTP REST 请求/响应

ios - libMobileGestalt MobileGestaltSupport.m :153 MobileGestalt. c:550 Xcode 控制台

ios - 如何删除一个 VC 然后直接添加另一个 VC

ios - 如何到达父对象中的主类?

ios - Firebase 下载相同的数据

ios - 获取点击的 UILabel 的值