Skip to content

CLASS

ContainerViewController

public final class ContainerViewController<ScreenType, Output>: UIViewController where ScreenType: Screen

Drives view controllers from a root Workflow.

Properties

output

public var output: Signal<Output, Never>

Emits output events from the bound workflow.

rootViewEnvironment

public var rootViewEnvironment: ViewEnvironment

childForStatusBarStyle

override public var childForStatusBarStyle: UIViewController?

childForStatusBarHidden

override public var childForStatusBarHidden: UIViewController?

childForHomeIndicatorAutoHidden

override public var childForHomeIndicatorAutoHidden: UIViewController?

childForScreenEdgesDeferringSystemGestures

override public var childForScreenEdgesDeferringSystemGestures: UIViewController?

supportedInterfaceOrientations

override public var supportedInterfaceOrientations: UIInterfaceOrientationMask

preferredStatusBarUpdateAnimation

override public var preferredStatusBarUpdateAnimation: UIStatusBarAnimation

childViewControllerForPointerLock

override public var childViewControllerForPointerLock: UIViewController?

Methods

init(workflow:rootViewEnvironment:)

public init<W: AnyWorkflowConvertible>(workflow: W, rootViewEnvironment: ViewEnvironment = .empty) where W.Rendering == ScreenType, W.Output == Output

update(workflow:)

public func update<W: AnyWorkflowConvertible>(workflow: W) where W.Rendering == ScreenType, W.Output == Output

Updates the root Workflow in this container.

init(coder:)

public required init?(coder aDecoder: NSCoder)

viewDidLoad()

override public func viewDidLoad()

viewDidLayoutSubviews()

override public func viewDidLayoutSubviews()

preferredContentSizeDidChange(forChildContentContainer:)

override public func preferredContentSizeDidChange(
    forChildContentContainer container: UIContentContainer
)