自定义UIStoryboardSegue在后退按钮按?

时间:2016-06-03 20:13:33

标签: ios objective-c uinavigationcontroller uistoryboardsegue

我有一个自定义UIStoryboardSegue缩放'一个UIImageView。现在我还需要一个自定义UIStoryboardSegue来缩小'当用户按下UINavigationController中的后退按钮时。我现在已经尝试了几天,但没有成功。

我已经将[{1}}子类化了,并将以下代码添加到其中:

UINavigationController

然而,这并没有被召唤。我在这里做错了什么?

1 个答案:

答案 0 :(得分:0)

  1. 我假设您仍在使用缩放切换视图
  2. 我是一个Swiftie,所以我的帮助将在Swift
  3. 您应该能够通过使您的班级成为导航控制器的代表然后使用导航控制器的willShowViewController方法来捕获这些事件

    • 在您定义时将UINavigationControllerDelegate添加到您的班级
    • viewDidLoad()功能下添加self.navigationController?.delegate = self
    • 现在你应该可以使用一个在导航控制器切换到新视图控制器之前运行的功能(所以是的,它也会在按下后退按钮时运行)。在Swift中它看起来像这样:

      func navigationController(navigationController: UINavigationController, willShowViewController viewController: UIViewController, animated: Bool) {
      
      //if the view controller we are going to is one we want to trigger this action
      if let _ = viewController as? ViewController {
          //perform the thing you want here
      }}