实例方法
tag(_:)
设置此视图的唯一标记值。
声明
func tag<V>(_ tag: V) -> some View where V : Hashable
返回值
具有指定标记集的视图。
参数
tag
用作视图标记的
Hashable
详述
使用此修饰符来区分某些可选视图,例如 Picker
的可能值或 TabView
的选项卡。标签值可以是任何符合
协议的类型。Hashable
在下面的示例中,Picker
视图构建器中的 ForEach
循环遍历 Flavor
枚举。它提取每个枚举元素的字符串值以用于构造行标签,并将枚举值强制转换为可选值,作为tag(_:)
修饰符的输入。 Picker
要求标签具有与选择类型完全匹配的类型,在这种情况下是可选的 Flavor
。
struct FlavorPicker: View {
enum Flavor: String, CaseIterable, Identifiable {
case chocolate, vanilla, strawberry
var id: Self { self }
}
@State private var selectedFlavor: Flavor? = nil
var body: some View {
Picker("Flavor", selection: $selectedFlavor) {
ForEach(Flavor.allCases) { flavor in
Text(flavor.rawValue).tag(Optional(flavor))
}
}
}
}
如果将 selectedFlavor
更改为非可选,则需要从标签输入中删除
强制转换以匹配。Optional
ForEach
使用相应元素的id
参数自动将默认标记应用于每个枚举视图。如果元素的 id
参数和选择器的 selection
输入具有完全相同的类型,则可以省略显式标记修饰符。要查看不需要显式标记的示例,请参阅 Picker
。
可用版本
iOS 13.0+, iPadOS 13.0+, macOS 10.15+, Mac Catalyst 13.0+, tvOS 13.0+, watchOS 6.0+
相关用法
- Swift Never task(priority:_:)用法及代码示例
- Swift Never task(id:priority:_:)用法及代码示例
- Swift Never tabItem(_:)用法及代码示例
- Swift Never transformEffect(_:)用法及代码示例
- Swift Never touchBarCustomizationLabel(_:)用法及代码示例
- Swift Never textSelection(_:)用法及代码示例
- Swift Never touchBar(content:)用法及代码示例
- Swift Never transaction(_:)用法及代码示例
- Swift Never touchBarItemPrincipal(_:)用法及代码示例
- Swift Never toggleStyle(_:)用法及代码示例
- Swift Never touchBarItemPresence(_:)用法及代码示例
- Swift Never truncationMode(_:)用法及代码示例
- Swift Never textInputAutocapitalization(_:)用法及代码示例
- Swift Never textContentType(_:)用法及代码示例
- Swift Never toolbar(id:content:)用法及代码示例
- Swift Never touchBar(_:)用法及代码示例
- Swift Never toolbar(content:)用法及代码示例
- Swift Never tint(_:)用法及代码示例
- 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(_:)用法及代码示例
注:本文由纯净天空筛选整理自apple.com大神的英文原创作品 Never tag(_:)。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。