STRUCT
AdaptedEnvironmentScreen
¶
public struct AdaptedEnvironmentScreen<Content>
Wraps a Screen
tree with a modified ViewEnvironment
.
By specifying environmental values with this Screen
, all child screens nested
will inherit those values automatically. Values can be changed
anywhere in a sub-tree by inserting another AdaptedEnvironmentScreen
.
MyScreen(...)
.adaptedEnvironment(keyPath: \.myValue, to: newValue)
Properties¶
wrapped
¶
public var wrapped: Content
The screen wrapped by this screen.
Methods¶
init(wrapping:adapting:)
¶
public init(
wrapping wrapped: Content,
adapting: @escaping Adapter
)
Wraps a Screen
with an environment that is modified using the given configuration block.
- Parameters:
- wrapping: The screen to be wrapped.
- adapting: A block that will set environmental values.
Parameters¶
Name | Description |
---|---|
wrapping | The screen to be wrapped. |
adapting | A block that will set environmental values. |
init(wrapping:key:value:)
¶
public init<Key: ViewEnvironmentKey>(
wrapping screen: Content,
key: Key.Type,
value: Key.Value
)
Wraps a Screen
with an environment that is modified for a single key and value.
- Parameters:
- wrapping: The screen to be wrapped.
- key: The environment key to modify.
- value: The new environment value to cascade.
Parameters¶
Name | Description |
---|---|
wrapping | The screen to be wrapped. |
key | The environment key to modify. |
value | The new environment value to cascade. |
init(wrapping:keyPath:value:)
¶
public init<Value>(
wrapping screen: Content,
keyPath: WritableKeyPath<ViewEnvironment, Value>,
value: Value
)
Wraps a Screen
with an environment that is modified for a single value.
- Parameters:
- wrapping: The screen to be wrapped.
- keyPath: The keypath of the environment value to modify.
- value: The new environment value to cascade.
Parameters¶
Name | Description |
---|---|
wrapping | The screen to be wrapped. |
keyPath | The keypath of the environment value to modify. |
value | The new environment value to cascade. |