元のドキュメント: developer.apple.com/documentation/swiftui/accessibilityfocusstate


構造体


AccessibilityFocusState


VoiceOver などのアクティブなアクセシビリティ技術の焦点が変更されると、SwiftUI が更新する値を読み書きできるプロパティラッパー型。


AccessibilityFocusState に同じ内容のものがあります。


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

tvOS 15.0+ visionOS 1.0+ watchOS 8.0+

@propertyWrapper @frozen
struct
AccessibilityFocusState<Value> where Value : Hashable




概観


この機能を使用すると、VoiceOver などのアクセシビリティ技術に特定の要素にプログラムでフォーカスを当てるよう要求したり、VoiceOver などのアクセシビリティ技術が特定の要素にフォーカスを当てているかどうかを判断したりできます。アクセシビリティフォーカスを取得または設定するアクセシビリティ要素を識別するには、このプロパティラッパーと組み合わせて accessibilityFocused(_:equals:) または accessibilityFocused(_:) を使用して下さい。アクセシビリティフォーカスが変更されたアクセシビリティ要素に入ると、フレームワークはこのプロパティのラップされた値を与えられたプロトタイプ値に一致するように更新します。アクセシビリティフォーカスが要素を離れると、SwiftUI はオプションプロパティのラップされた値を nil に、またはブール型プロパティのラップされた値を false にリセットします。プロパティの値をプログラムで設定すると、逆の効果が得られ、アクセシビリティフォーカスはどれであれ更新された値に関連するアクセシビリティ要素に移動します。


以下の例では、notification が変更され、その isPriority プロパティが true の場合、アクセシビリティフォーカスはビューの他のコンテンツの上にある通知の Text 要素に移動します。


struct CustomNotification: Equatable {
    var text: String
    var isPriority: Bool
}

struct ContentView: View {
    @Binding var notification: CustomNotification?
    @AccessibilityFocusState var isNotificationFocused: Bool

    var body: some View {
        VStack {
            if let notification = self.notification {
                Text(notification.text)
                    .accessibilityFocused($isNotificationFocused)
            }
            Text("The main content for this view.")
        }
        .onChange(of: notification) { notification in
            if (notification?.isPriority == true)  {
                isNotificationFocused = true
            }
        }

    }
}




トピックス


フォーカス状態の作成


init()

ブール値に対して、新しいアクセシビリティフォーカス状態を作成します。


init(for:)

あなたの指定したアクセシビリティ技術を使用して、ブール値に対する新しいアクセシビリティフォーカス状態を作成します。



状態の取得


var projectedValue: AccessibilityFocusState<Value>.Binding

ビューの内容とアクセシビリティフォーカスの配置の間の結合を確立するために使用できる状態値の投影。


var wrappedValue: Value

現在のフォーカス位置により有効になる可能性のある結合を考慮した現在の状態値。


struct Binding





関連


以下に準拠


DynamicProperty

Sendable

SendableMetatype





以下も見よ


Focus (焦点) の制御


func accessibilityFocused(AccessibilityFocusState<Bool>.Binding) -> some View

このビューのアクセシビリティ要素のフォーカス状態を、与えられたブール状態値に結合することで、このビューを変更します。


struct AccessibilityFocusState

VoiceOver などのアクティブなアクセシビリティ技術の焦点が変更されると、SwiftUI が更新する値を読み書きできるプロパティラッパー型。














トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ