インスタンスメソッド


accessibilityRotor(_:entries:entryLabel:)


指定されたシステム提供のローターを置き換えるアクセシビリティローターを作成します。


iOS 15.0+ iPadOS 15.0+ macOS 12.0+ Mac Catalyst 15.0+

tvOS 15.0+ watchOS 8.0+ visionOS 1.0+


func accessibilityRotor<EntryModel>(

_ systemRotor: AccessibilitySystemRotor,
entries: [EntryModel],
entryLabel: KeyPath<EntryModel, String>
) -> some View where EntryModel : Identifiable






パラメータ


systemRotor

このカスタムローターによってオーバーライドされるシステム提供のローター。


entries

ローターのエントリを生成するために使用される ID 可能な値の配列。Identifiable な値の ID は、ForEach 内の ID または ScrollView 内の明示的な id 呼び出しと一致しなければなりません。ユーザーがこのローターからエントリに移動すると、SwiftUI は必要に応じてエントリを所定の位置に自動的にスクロールします。


entryLabel

すべてのローターエントリに対してユーザーに可視のラベルを取得するために使用できる、Identifiable なタイプのキーパス。これは、ユーザーがローターのエントリのリストを開くときに macOS で使用されます。



議論


アクセシビリティローターは、アクセシビリティユーザーがユーザーインターフェイスの特定の要素、およびオプションでそれらの要素内の特定の範囲のテキストにすばやく移動するためのショートカットです。


この修飾子を使用するには、ローターを ScrollView に付属させるか、ForEach などの ScrollView 内のアクセシビリティ要素に直接付属させる必要があります。


以下の例では、メッセージアプリケーションがローターを作成し、ユーザーがメッセージの垂直スタックの見出しに移動できるようにします。


  1. // `messageListItems` is a list of `Identifiable` `MessageListItem`s
  2. // that are either a `Message` or a heading, containing a `subject`.
  3. // `headingMessageListItems` is a filtered list of
  4. // `messageListItems` containing just the headings.
  5. ScrollView {
  6. LazyVStack {
  7. ForEach(messageListItems) { messageListItem in
  8. switch messageListItem {
  9. case .heading(let subject):
  10. Text(subject)
  11. case .message(let message):
  12. MessageView(message)
  13. }
  14. }
  15. }
  16. }
  17. .accessibilityElement(children: .contain)
  18. .accessibilityRotor(
  19. .heading, entries: headingMessageListItems, label: \.subject)




以下も見よ


システムローターの置き換え


func accessibilityRotor<Content>(AccessibilitySystemRotor, entries: () -> Content) -> some View

指定されたシステム提供のローターを置き換えるアクセシビリティローターを作成します。


func accessibilityRotor<EntryModel, ID>(AccessibilitySystemRotor, entries: [EntryModel], entryID: KeyPath<EntryModel, ID>, entryLabel: KeyPath&lEtntryModel, String>) -> some View

指定されたシステム提供のローターを置き換えるアクセシビリティローターを作成します。


func accessibilityRotor(AccessibilitySystemRotor, textRanges: [Range<String.Index>]) -> some View

指定されたシステム提供のローターを置き換えるアクセシビリティローターを作成します。ローターは現在のアクセシビリティ要素に付属され、各エントリはその要素の指定された範囲に移動します。


struct AccessibilitySystemRotor

システムが提供する自動ローターの 1 つを開発者が提供するローターに置き換えるローターを指定します。















トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ