UINavigationController переход делегата

Я реализовал метод UINavigationControllerDelegate:

public func navigationController(navigationController: UINavigationController, animationControllerForOperation operation: UINavigationControllerOperation, fromViewController fromVC: UIViewController, toViewController toVC: UIViewController) -> UIViewControllerAnimatedTransitioning? { }

потому что я должен был установить состояние приложения и только "событие", которое было в состоянии захватить Pop transition из моего UINavigationController был этот метод. Все работает правильно, но что касается этой функциональности, но теперь мое движение назад не работает (работает только нажатие кнопки назад).

В конце этого метода я возвратил ноль, потому что я понятия не имел, что он делает, но, видимо, это влияет на функциональность смахивания назад.

Есть ли по умолчанию UIViewControllerAnimatedTransitioning что я могу вернуть, чтобы иметь эту функцию смахивания назад?

Благодарю.

1 ответ

Я переключился на этот метод делегата:

public func navigationController(navigationController: UINavigationController, willShowViewController viewController: UIViewController, animated: Bool) { 
    if self.viewControllerCount - 1 == self.rootController.viewControllers.count {
       // Pop action, do additional logic
   }
}

и настроил его так, чтобы я мог точно знать, является ли его всплывающее действие (отслеживание последнего числа контроллеров представления.

Другие вопросы по тегам