インスタンスメソッド
accessibilityRotor(_:entries:entryID:entryLabel:)
指定されたユーザ可視のラベルとエントリで、アクセシビリティローターを作成します。
iOS 15.0+ iPadOS 15.0+ macOS 12.0+ Mac Catalyst 15.0+ tvOS 15.0+ watchOS 8.0+ visionOS 1.0+   Beta  
func accessibilityRotor<L, EntryModel, ID>(
_ rotorLabel: L,
entries: [EntryModel],
entryID:
KeyPath<
EntryModel, ID>,
) -> some View where L : StringProtocol, ID : Hashable
パラメータ
rotorlabel
ユーザーに対してこのローターを識別するローカライズされたラベル。
entries
ローターのエントリを生成するために使用される値の配列。
entryID
エントリの識別子(ID)の生成に使用できるエントリ型のキーパス。識別子(ID)は、ForEach の ID または ScrollView 内の明示的な id 呼び出しと一致しなければなりません。
entryLabel
すべての Rotor エントリのユーザ可視のラベルを取得するために使用できるエントリ型のキーパス。これは、ユーザがローターのエントリのリストを開くときに macOS で使用されます。
議論
アクセシビリティローターは、アクセシビリティユーザがユーザインターフェイスの特定の要素、およびオプションでそれらの要素内の特定の範囲のテキストにすばやくナビゲートするためのショートカットです。
この修飾子を使用するには、Rotor を ScrollView に接着させるか、ForEach などの ScrollView 内のアクセシビリティ要素に直接接着させる必要があります。ユーザがこの Rotor からエントリにナビゲートすると、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)
以下も見よ
コレクションからローターを作成
func accessibilityRotor<EntryModel, ID>(LocalizedStringKey, entries: [EntryModel], entryID: KeyPath<EntryModel, ID>, entryLabel: KeyPath<EntryModel, String>) -> some View
指定されたユーザ可視のラベルとエントリで、アクセシビリティローターを作成します。
func accessibilityRotor<EntryModel, ID>(Text, entries: [EntryModel], entryID: KeyPath<EntryModel, ID>, entryLabel: KeyPath<EntryModel, String>) -> some View
指定されたユーザ可視のラベルとエントリで、アクセシビリティローターを作成します。
トップへ
トップへ
トップへ
トップへ
トップへ
トップへ
トップへ