Skip to content

CLASS

WorkflowHostingController¶

public final class WorkflowHostingController<ScreenType, Output>: WorkflowUIViewController 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.

customizeEnvironment¶

public var customizeEnvironment: CustomizeEnvironment

An environment customization that will be applied to the environment of the root screen.

screen¶

public var screen: ScreenType

The currently displayed screen - the most recent rendering from the hosted workflow

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:customizeEnvironment:observers:)¶

public init<W: AnyWorkflowConvertible>(
    workflow: W,
    customizeEnvironment: @escaping CustomizeEnvironment = { _ in },
    observers: [WorkflowObserver] = []
) 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()

viewWillLayoutSubviews()¶

override public func viewWillLayoutSubviews()

viewDidLayoutSubviews()¶

override public func viewDidLayoutSubviews()

preferredContentSizeDidChange(forChildContentContainer:)¶

override public func preferredContentSizeDidChange(
    forChildContentContainer container: UIContentContainer
)