用法一
accessibilityRotor(_:entries:)
聲明
func accessibilityRotor<L, Content>(
_ label: L,
entries: @escaping () -> Content
) -> some View where L : StringProtocol, Content : AccessibilityRotorContent
參數
label
向用戶標識此轉子的本地化標簽。
entries
用於生成轉子條目的內容。這可以包括AccessibilityRotorEntry 結構,以及 if 和 ForEach 等結構。
詳述
輔助函數轉子是輔助函數用戶快速導航到用戶接口的特定元素以及這些元素中的特定文本範圍的快捷方式。
在以下示例中,消息應用程序創建了一個轉子,允許用戶導航到特定於來自 VIP 的消息。
// `messages` is a list of `Identifiable` `Message`s.
ScrollView {
LazyVStack {
ForEach(messages) { message in
MessageView(message)
}
}
}
.accessibilityElement(children: .contain)
.accessibilityRotor("VIPs") {
// Not all the MessageViews are generated at once, the model
// knows about all the messages.
ForEach(messages) { message in
// If the Message is from a VIP, make a Rotor entry for it.
if message.isVIP {
AccessibilityRotorEntry(message.subject, id: message.id)
}
}
}
可用版本
用法二
accessibilityRotor(_:entries:)
聲明
func accessibilityRotor<Content>(
_ labelKey: LocalizedStringKey,
entries: @escaping () -> Content
) -> some View where Content : AccessibilityRotorContent
參數
labelKey
向用戶標識此轉子的本地化標簽。
entries
用於生成轉子條目的內容。這可以包括AccessibilityRotorEntry 結構,以及 if 和 ForEach 等結構。
詳述
輔助函數轉子是輔助函數用戶快速導航到用戶接口的特定元素以及這些元素中的特定文本範圍的快捷方式。
在以下示例中,消息應用程序創建了一個轉子,允許用戶導航到特定於來自 VIP 的消息。
// `messages` is a list of `Identifiable` `Message`s.
ScrollView {
LazyVStack {
ForEach(messages) { message in
MessageView(message)
}
}
}
.accessibilityElement(children: .contain)
.accessibilityRotor("VIPs") {
// Not all the MessageViews are generated at once, the model
// knows about all the messages.
ForEach(messages) { message in
// If the Message is from a VIP, make a Rotor entry for it.
if message.isVIP {
AccessibilityRotorEntry(message.subject, id: message.id)
}
}
}
可用版本
用法三
accessibilityRotor(_:entries:)
聲明
func accessibilityRotor<Content>(
_ systemRotor: AccessibilitySystemRotor,
entries: @escaping () -> Content
) -> some View where Content : AccessibilityRotorContent
參數
systemRotor
將被此自定義轉子覆蓋的係統提供的轉子。
entries
用於生成轉子條目的內容。這可以包括AccessibilityRotorEntry 結構,以及 if 和 ForEach 等結構。
詳述
輔助函數轉子是輔助函數用戶快速導航到用戶接口的特定元素以及這些元素中的特定文本範圍的快捷方式。當係統轉子不會自動拾取不在屏幕上的元素時,以這種方式替換係統轉子很有用,例如 LazyVStack
或 List
中的元素。
在以下示例中,消息應用程序添加了一個轉子,允許用戶瀏覽包含標題的所有文本範圍。
extension Message {
// Ranges of special areas in the `content` text. Calculated
// when `content` is set and then cached so that we don't have
// to re-compute them.
var contentHeadingRanges: [Range<String.Index>]
}
struct MessageContentView: View {
TextEditor(.constant(message.content))
.accessibilityRotor(.heading) {
ForEach(range in message.contentHeadingRanges) {
AccessibilityRotorEntry(textRange: range)
}
}
}
可用版本
用法四
accessibilityRotor(_:entries:)
聲明
func accessibilityRotor<Content>(
_ label: Text,
entries: @escaping () -> Content
) -> some View where Content : AccessibilityRotorContent
參數
label
向用戶標識此轉子的本地化標簽。
entries
用於生成轉子條目的內容。這可以包括AccessibilityRotorEntry 結構,以及 if 和 ForEach 等結構。
詳述
輔助函數轉子是輔助函數用戶快速導航到用戶接口的特定元素以及這些元素中的特定文本範圍的快捷方式。
在以下示例中,消息應用程序創建了一個轉子,允許用戶導航到特定於來自 VIP 的消息。
// `messages` is a list of `Identifiable` `Message`s.
ScrollView {
LazyVStack {
ForEach(messages) { message in
MessageView(message)
}
}
}
.accessibilityElement(children: .contain)
.accessibilityRotor("VIPs") {
// Not all the MessageViews are generated at once, the model knows
// about all the messages.
ForEach(messages) { message in
// If the Message is from a VIP, make a Rotor entry for it.
if message.isVIP {
AccessibilityRotorEntry(message.subject, id: message.id)
}
}
}
可用版本
相關用法
- Swift Never accessibilityRotor(_:entries:entryID:entryLabel:)用法及代碼示例
- Swift Never accessibilityRotor(_:entries:entryLabel:)用法及代碼示例
- 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:)。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。