インスタンスメソッド


accessibilityRotor(_:entries:)


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


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

tvOS 15.0+ watchOS 8.0+ visionOS 1.0+


func accessibilityRotor<Content>(

_ systemRotor: AccessibilitySystemRotor,
@AccessibilityRotorContentBuilder entries: @escaping () -> Content
) -> some View where Content : AccessibilityRotorContent







パラメータ


systemRotor

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


entries

ローターエントリの生成に使用されるコンテンツ。これには、AccessibilityRotorEntry 構造体だけでなく、ifForEach などの構造体も含まれます。



議論


アクセシビリティローターは、アクセシビリティユーザーがユーザーインターフェイスの特定の要素、およびオプションでそれらの要素内の特定の範囲のテキストにすばやく移動するためのショートカットです。この方法でシステムローターを置き換えることは、LazyVStackList のはるか下にある要素など、画面上にない要素をシステムローターが自動的に取得しない場合に便利です。


以下の例では、メッセージ アプリケーションがローターを追加し、ユーザーが見出しを含むテキストのすべての範囲をナビゲートできるようにしています。


  1. extension Message {
  2. // Ranges of special areas in the `content` text. Calculated
  3. // when `content` is set and then cached so that we don't have
  4. // to re-compute them.
  5. var contentHeadingRanges: [Range<String.Index>]
  6. }
  7. struct MessageContentView: View {
  8. TextEditor(.constant(message.content))
  9. .accessibilityRotor(.heading) {
  10. ForEach(range in message.contentHeadingRanges) {
  11. AccessibilityRotorEntry(textRange: range)
  12. }
  13. }
  14. }




以下も見よ


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


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

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


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

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


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

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


struct AccessibilitySystemRotor

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















トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ