实例方法
environment(_:
environment(_:_:)
将指定键路径的环境值设置为给定值。
声明
func environment<V>(
_ keyPath: WritableKeyPath<EnvironmentValues, V>,
_ value: V
) -> some View
返回值
在其环境中设置了给定值的视图。
参数
keyPath
指示要更新的
EnvironmentValues
结构的属性的关键路径。value
为
keyPath
指定的项目设置的新值。
详述
使用此修饰符设置 EnvironmentValues
结构的可写属性之一,包括您创建的自定义值。例如,您可以设置与 EnvironmentValues/truncationMode
键关联的值:
MyView()
.environment(\.truncationMode, .head)
然后,您可以使用 Environment
属性包装器读取 MyView
或其后代之一中的值:
struct MyView: View {
@Environment(\.truncationMode) var truncationMode: Text.TruncationMode
var body: some View { ... }
}
SwiftUI 提供专用的视图修饰符来设置大多数环境值,例如设置 EnvironmentValues/truncationMode
值的 View/truncationMode(_:)
修饰符:
MyView()
.truncationMode(.head)
如EnvironmentKey
中所述,在可用时首选专用修饰符,并在定义自定义环境值时提供您自己的修饰符。
View/environment(_:_:)
修饰符影响给定视图,以及该视图的后代视图。它在您调用它的视图层次结构之外没有任何影响。
可用版本
iOS 13.0+, iPadOS 13.0+, macOS 10.15+, Mac Catalyst 13.0+, tvOS 13.0+, watchOS 6.0+
相关用法
- Swift Never exportingCondition(_:)用法及代码示例
- Swift Never pageCommand(value:in:step:)用法及代码示例
- Swift Never opacity(_:)用法及代码示例
- Swift Never colorMultiply(_:)用法及代码示例
- Swift Never accessibilityAction(action:label:)用法及代码示例
- Swift Never alert(isPresented:error:actions:message:)用法及代码示例
- Swift Never confirmationDialog(_:isPresented:titleVisibility:actions:)用法及代码示例
- Swift Never flipsForRightToLeftLayoutDirection(_:)用法及代码示例
- Swift Never position(x:y:)用法及代码示例
- Swift Never position(_:)用法及代码示例
- Swift Never luminanceToAlpha()用法及代码示例
- Swift Never accessibilityAction(_:_:)用法及代码示例
- Swift Never previewDisplayName(_:)用法及代码示例
- Swift Never badge(_:)用法及代码示例
- Swift Never progressViewStyle(_:)用法及代码示例
- Swift Never buttonStyle(_:)用法及代码示例
- Swift Never popover(isPresented:attachmentAnchor:arrowEdge:content:)用法及代码示例
- Swift Never projectionEffect(_:)用法及代码示例
- Swift Never onTapGesture(count:perform:)用法及代码示例
- Swift Never overlay(_:in:fillStyle:)用法及代码示例
- Swift Never background(_:ignoresSafeAreaEdges:)用法及代码示例
- Swift Never digitalCrownRotation(_:)用法及代码示例
- Swift Never saturation(_:)用法及代码示例
- Swift Never simultaneousGesture(_:including:)用法及代码示例
- Swift Never listRowSeparatorTint(_:edges:)用法及代码示例
注:本文由纯净天空筛选整理自apple.com大神的英文原创作品 Never environment(_:_:)。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。