我有一个自定义UIStoryboardSegue
缩放'一个UIImageView
。现在我还需要一个自定义UIStoryboardSegue
来缩小'当用户按下UINavigationController
中的后退按钮时。我现在已经尝试了几天,但没有成功。
我已经将[{1}}子类化了,并将以下代码添加到其中:
UINavigationController
然而,这并没有被召唤。我在这里做错了什么?
答案 0 :(得分:0)
您应该能够通过使您的班级成为导航控制器的代表然后使用导航控制器的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
}}