用法一
accessibilityRotor(_:entries:entryID:entryLabel:)
声明
func accessibilityRotor<EntryModel, ID>(
_ rotorLabel: Text,
entries: [EntryModel],
entryID: KeyPath<EntryModel, ID>,
entryLabel: KeyPath<EntryModel, String>
) -> some View where ID : Hashable
参数
rotorLabel
向用户标识此转子的本地化标签。
entries
将用于生成转子条目的值数组。
entryID
条目类型上的键路径,可用于为条目生成标识符。标识符必须与
ForEach
中的标识符或ScrollView
中的显式id
调用匹配。entryLabel
条目类型上的键路径,可用于为每个转子条目获取user-visible 标签。当用户打开转子的条目列表时,这在 macOS 上使用。
详述
辅助函数转子是辅助函数用户快速导航到用户接口的特定元素以及这些元素中的特定文本范围的快捷方式。
使用此修饰符需要将转子附加到 ScrollView
或直接在 ScrollView
内的辅助函数元素,例如 ForEach
。当用户从该转子导航到条目时,SwiftUI 将根据需要自动将它们滚动到适当的位置。
在以下示例中,消息应用程序创建了一个转子,允许用户导航到特定于来自 VIP 的消息。
// `messages` is a list of `Message`s that have a `subject` and a
// `uuid`. `vipMessages` is a filtered version of that list
// containing only messages from VIPs.
ScrollView {
LazyVStack {
ForEach(messages) { message in
MessageView(message)
}
}
}
.accessibilityElement(children: .contain)
.accessibilityRotor("VIPs", entries: vipMessages,
id: \.uuid, label: \.subject)
可用版本
用法二
accessibilityRotor(_:entries:entryID:entryLabel:)
声明
func accessibilityRotor<EntryModel, ID>(
_ rotorLabelKey: LocalizedStringKey,
entries: [EntryModel],
entryID: KeyPath<EntryModel, ID>,
entryLabel: KeyPath<EntryModel, String>
) -> some View where ID : Hashable
参数
labelKey
向用户标识此转子的本地化标签。
entries
将用于生成转子条目的值数组。
entryID
条目类型上的键路径,可用于为条目生成标识符。标识符必须与
ForEach
中的标识符或ScrollView
中的显式id
调用匹配。entryLabel
条目类型上的键路径,可用于为每个转子条目获取user-visible 标签。当用户打开转子的条目列表时,这在 macOS 上使用。
详述
辅助函数转子是辅助函数用户快速导航到用户接口的特定元素以及这些元素中的特定文本范围的快捷方式。
使用此修饰符需要将转子附加到 ScrollView
或直接在 ScrollView
内的辅助函数元素,例如 ForEach
。当用户从该转子导航到条目时,SwiftUI 将根据需要自动将它们滚动到适当的位置。
在以下示例中,消息应用程序创建了一个转子,允许用户导航到特定于来自 VIP 的消息。
// `messages` is a list of `Message`s that have a `subject` and a
// `uuid`. `vipMesages` is a filtered version of that list
// containing only messages from VIPs.
ScrollView {
LazyVStack {
ForEach(messages) { message in
MessageView(message)
}
}
}
.accessibilityElement(children: .contain)
.accessibilityRotor("VIPs", entries: vipMessages,
entryID: \.uuid, entryLabel: \.subject)
可用版本
用法三
accessibilityRotor(_:entries:entryID:entryLabel:)
声明
func accessibilityRotor<EntryModel, ID>(
_ systemRotor: AccessibilitySystemRotor,
entries: [EntryModel],
entryID: KeyPath<EntryModel, ID>,
entryLabel: KeyPath<EntryModel, String>
) -> some View where ID : Hashable
参数
systemRotor
将被此自定义转子覆盖的系统提供的转子。
entries
将用于生成转子条目的值数组。
entryID
条目类型上的键路径,可用于为条目生成标识符。标识符必须与
ForEach
中的标识符或ScrollView
中的显式id
调用匹配。entryLabel
条目类型上的键路径,可用于为每个转子条目获取user-visible 标签。当用户打开转子的条目列表时,这在 macOS 上使用。
详述
辅助函数转子是辅助函数用户快速导航到用户接口的特定元素以及这些元素中的特定文本范围的快捷方式。
使用此修饰符需要将转子附加到 ScrollView
或直接在 ScrollView
内的辅助函数元素,例如 ForEach
。当用户从该转子导航到条目时,SwiftUI 将根据需要自动将它们滚动到适当的位置。
在以下示例中,消息应用程序创建了一个转子,允许用户导航到其垂直消息堆栈中的标题。
// `messageListItems` is a list of `MessageListItem`s
// that are either a `Message` or a heading, containing a `subject`
// and a `uuid`.
// `headingMessageListItems` is a filtered list of
// `messageListItems` containing just the headings.
ScrollView {
LazyVStack {
ForEach(messageListItems) { messageListItem in
switch messageListItem {
case .heading(let subject):
Text(subject)
case .message(let message):
MessageView(message)
}
}
}
}
.accessibilityElement(children: .contain)
.accessibilityRotor(
.heading, entries: headingMessageListItems,
entryID: \.uuid, label: \.subject
)
可用版本
相关用法
- Swift Never accessibilityRotor(_:entries:entryLabel:)用法及代码示例
- Swift Never accessibilityRotor(_:entries:)用法及代码示例
- Swift Never accessibilityRotor(_:textRanges:)用法及代码示例
- Swift Never accessibilityRepresentation(representation:)用法及代码示例
- Swift Never accessibilityAction(action:label:)用法及代码示例
- Swift Never accessibilityAction(_:_:)用法及代码示例
- Swift Never accessibilityChildren(children:)用法及代码示例
- Swift Never accessibilityAction(named:_:)用法及代码示例
- Swift Never accessibilityChartDescriptor(_:)用法及代码示例
- Swift Never accessibilityAdjustableAction(_:)用法及代码示例
- Swift Never accessibilityShowsLargeContentViewer()用法及代码示例
- Swift Never accessibilityScrollAction(_:)用法及代码示例
- Swift Never accessibilityShowsLargeContentViewer(_:)用法及代码示例
- Swift Never alert(isPresented:error:actions:message:)用法及代码示例
- Swift Never autocorrectionDisabled(_:)用法及代码示例
- Swift Never alert(_:isPresented:presenting:actions:)用法及代码示例
- Swift Never alignmentGuide(_:computeValue:)用法及代码示例
- Swift Never allowsTightening(_:)用法及代码示例
- Swift Never alert(isPresented:error:actions:)用法及代码示例
- Swift Never alert(_:isPresented:actions:)用法及代码示例
- Swift Never alert(_:isPresented:presenting:actions:message:)用法及代码示例
- Swift Never aspectRatio(_:contentMode:)用法及代码示例
- Swift Never alert(_:isPresented:actions:message:)用法及代码示例
- Swift Never pageCommand(value:in:step:)用法及代码示例
- Swift Never opacity(_:)用法及代码示例
注:本文由纯净天空筛选整理自apple.com大神的英文原创作品 Never accessibilityRotor(_:entries:entryID:entryLabel:)。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。