Coordinator

protocol Coordinator : AnyObject

Coordinator Protocol입니다. 모든 Coordinator는 해당 protocol을 채택합니다.

  • Coordinator type입니다.

    Declaration

    Swift

    var type: CoordinatorType { get }
  • 상위 Coordinator에게 자신의 종료를 알리기 위한 Delegate 입니다.

    Declaration

    Swift

    var finishDelegate: CoordinatorFinishDelegate? { get set }
  • TabBarDelegate 프로토콜을 구현하는 객체에게 탭 바의 표시 여부를 제어하라는 지시를 전달하는 역할을 합니다.

    Declaration

    Swift

    var tabBarDelegate: TabBarDelegate? { get set }
  • Declaration

    Swift

    var childCoordinators: [Coordinator] { get set }
  • Declaration

    Swift

    var navigationController: UINavigationController { get set }
  • Declaration

    Swift

    var viewTitle: String? { get set }
  • Declaration

    Swift

    func start()
  • finish() Default implementation

    Default Implementation

    종료 메서드 입니다.

    1. 해당 코디네이터에 있는 자식들의 UINavigationControllerViewController들을 전부 삭제하고
    2. 자식 코디네이터를 전부 삭제합니다.
    3. 해당 코디네이터 UINavigationController에 push되어있는 ViewController들을 전부 삭제합니다.
    4. 그 후 상위 Coordinator에게 자신이 종료되었음을 알립니다.

    Declaration

    Swift

    func finish()