-
Create accessible spatial experiences
Learn how you can make spatial computing apps that work well for everyone. Like all Apple platforms, visionOS is designed for accessibility: We'll share how we've reimagined assistive technologies like VoiceOver and Pointer Control and designed features like Dwell Control to help people interact in the way that works best for them. Learn best practices for vision, motor, cognitive, and hearing accessibility and help everyone enjoy immersive experiences for visionOS.
Capítulos
Recursos
- Diorama
- Improving accessibility support in your visionOS app
- UIAccessibility
- Accessibility
- Media Accessibility
Videos relacionados
WWDC23
WWDC22
WWDC21
WWDC20
WWDC19
-
Buscar este video…
-
-
5:28 - Use AccessibilityComponent with RealityKit
var accessibilityComponent = AccessibilityComponent() accessibilityComponent.isAccessibilityElement = true accessibilityComponent.traits = [.button, .playsSound] accessibilityComponent.label = "Cloud" accessibilityComponent.value = "Grumpy" cloud.components[AccessibilityComponent.self] = accessibilityComponent // ... var isHappy: Bool { didSet { cloudEntities[id].accessibilityValue = isHappy ? "Happy" : "Grumpy" } } -
8:04 - Add an activate action
var accessibilityComponent = AccessibilityComponent() accessibilityComponent.isAccessibilityElement = true accessibilityComponent.traits = [.button, .playsSound] accessibilityComponent.label = "Cloud" accessibilityComponent.value = "Grumpy" accessibilityComponent.systemActions = [.activate] cloud.components[AccessibilityComponent.self] = accessibilityComponent // ... content.subscribe(to: AccessibilityEvents.Activate.self, componentType: nil) { activation in handleCloudCollision(for: activation.entity, gameModel: gameModel) } -
9:23 - Announce meaningful events and changes in context
AccessibilityNotification.Announcement("8 clouds in front of you").post() -
13:15 - Provide alternatives to head anchored content
// SwiftUI @Environment(\.accessibilityPrefersHeadAnchorAlternative) private var accessibilityPrefersHeadAnchorAlternative // UIKit AXPrefersHeadAnchorAlternative() NSNotification.Name.AXPrefersHeadAnchorAlternativeDidChange -
15:04 - Provide alternatives when Reduce Motion is enabled
// SwiftUI @Environment(\.accessibilityReduceMotion) private var accessibilityReduceMotion // UIKit UIAccessibility.isReduceMotionEnabled UIAccessibility.reduceMotionStatusDidChangeNotification -
23:35 - Check whether captions are enabled
UIAccessibility.isClosedCaptioningEnabled UIAccessibility.closedCaptioningStatusDidChangeNotification
-