用法一
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:)。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。