实例方法
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 Optional tabItem(_:)用法及代码示例
- Swift Optional task(priority:_:)用法及代码示例
- Swift Optional task(id:priority:_:)用法及代码示例
- Swift Optional textSelection(_:)用法及代码示例
- Swift Optional toolbar(id:content:)用法及代码示例
- Swift Optional tint(_:)用法及代码示例
- Swift Optional toolbar(content:)用法及代码示例
- Swift Optional textContentType(_:)用法及代码示例
- Swift Optional touchBarItemPresence(_:)用法及代码示例
- Swift Optional touchBar(_:)用法及代码示例
- Swift Optional touchBar(content:)用法及代码示例
- Swift Optional toggleStyle(_:)用法及代码示例
- Swift Optional transaction(_:)用法及代码示例
- Swift Optional textInputAutocapitalization(_:)用法及代码示例
- Swift Optional touchBarCustomizationLabel(_:)用法及代码示例
- Swift Optional truncationMode(_:)用法及代码示例
- Swift Optional transformEffect(_:)用法及代码示例
- Swift Optional touchBarItemPrincipal(_:)用法及代码示例
- Swift Optional symbolVariant(_:)用法及代码示例
- Swift Optional popover(isPresented:attachmentAnchor:arrowEdge:content:)用法及代码示例
- Swift Optional mask(alignment:_:)用法及代码示例
- Swift Optional listSectionSeparatorTint(_:edges:)用法及代码示例
- Swift Optional badge(_:)用法及代码示例
- Swift Optional fullScreenCover(isPresented:onDismiss:content:)用法及代码示例
- Swift Optional keyboardType(_:)用法及代码示例
注:本文由纯净天空筛选整理自apple.com大神的英文原创作品 Optional tag(_:)。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。