<!--
{
  "availability" : [
    "iOS: -",
    "iPadOS: -",
    "macCatalyst: -",
    "tvOS: -",
    "visionOS: -",
    "watchOS: -"
  ],
  "documentType" : "symbol",
  "framework" : "UIKit",
  "identifier" : "/documentation/UIKit/UIAccessibility",
  "metadataVersion" : "0.1.0",
  "role" : "Structure",
  "symbol" : {
    "kind" : "Structure",
    "modules" : [
      "UIKit"
    ],
    "preciseIdentifier" : "c:@S@UIAccessibility"
  },
  "title" : "UIAccessibility"
}
-->

# UIAccessibility

A namespace for accessibility symbols for UIKit apps.

```
struct UIAccessibility
```

## Topics

### System notifications

[`announcementDidFinishNotification`](/documentation/UIKit/UIAccessibility/announcementDidFinishNotification)

A notification that UIKit posts when the system finishes reading an announcement.

[`elementFocusedNotification`](/documentation/UIKit/UIAccessibility/elementFocusedNotification)

A notification that UIKit posts when an assistive app focuses on an accessibility element.

### App notifications

[`post(notification:argument:)`](/documentation/UIKit/UIAccessibility/post(notification:argument:))

Posts a notification to assistive apps.

[`UIAccessibility.Notification`](/documentation/UIKit/UIAccessibility/Notification)

An accessibility notification that an app can send.

### Notification keys

[`announcementStringValueUserInfoKey`](/documentation/UIKit/UIAccessibility/announcementStringValueUserInfoKey)

The text of the announcement.

[`announcementWasSuccessfulUserInfoKey`](/documentation/UIKit/UIAccessibility/announcementWasSuccessfulUserInfoKey)

A Boolean value that indicates whether the announcement is successful.

[`focusedElementUserInfoKey`](/documentation/UIKit/UIAccessibility/focusedElementUserInfoKey)

The element currently in focus by the assistive app.

[`unfocusedElementUserInfoKey`](/documentation/UIKit/UIAccessibility/unfocusedElementUserInfoKey)

The element previously in focus by the assistive app.

[`assistiveTechnologyUserInfoKey`](/documentation/UIKit/UIAccessibility/assistiveTechnologyUserInfoKey)

The identifier of the assistive app.

### VoiceOver

[`isVoiceOverRunning`](/documentation/UIKit/UIAccessibility/isVoiceOverRunning)

A Boolean value that indicates whether VoiceOver is in an enabled state.

[`voiceOverStatusDidChangeNotification`](/documentation/UIKit/UIAccessibility/voiceOverStatusDidChangeNotification)

A notification that UIKit posts when VoiceOver starts or stops.

### Switch Control

[`isSwitchControlRunning`](/documentation/UIKit/UIAccessibility/isSwitchControlRunning)

A Boolean value that indicates whether the Switch Control setting is in an enabled state.

[`switchControlStatusDidChangeNotification`](/documentation/UIKit/UIAccessibility/switchControlStatusDidChangeNotification)

A notification that UIKit posts when the system’s Switch Control setting changes.

### AssistiveTouch

[`isAssistiveTouchRunning`](/documentation/UIKit/UIAccessibility/isAssistiveTouchRunning)

A Boolean value that indicates whether AssistiveTouch is in an enabled state.

[`assistiveTouchStatusDidChangeNotification`](/documentation/UIKit/UIAccessibility/assistiveTouchStatusDidChangeNotification)

A notification that indicates a change in the status of AssistiveTouch.

### Autoplay videos

[`isVideoAutoplayEnabled`](/documentation/UIKit/UIAccessibility/isVideoAutoplayEnabled)

A Boolean value that indicates whether the Auto-Play Video Previews setting is in an enabled state.

[`videoAutoplayStatusDidChangeNotification`](/documentation/UIKit/UIAccessibility/videoAutoplayStatusDidChangeNotification)

A notification that UIKit posts when the system’s Auto-Play Video Previews setting changes.

### Bold text

[`isBoldTextEnabled`](/documentation/UIKit/UIAccessibility/isBoldTextEnabled)

A Boolean value that indicates whether the Bold Text setting is in an enabled state.

[`boldTextStatusDidChangeNotification`](/documentation/UIKit/UIAccessibility/boldTextStatusDidChangeNotification)

A notification that UIKit posts when the system’s Bold Text setting changes.

### Button shapes

[`buttonShapesEnabled`](/documentation/UIKit/UIAccessibility/buttonShapesEnabled)

A Boolean value that indicates whether the Button Shapes setting is in an enabled state.

[`buttonShapesEnabledStatusDidChangeNotification`](/documentation/UIKit/UIAccessibility/buttonShapesEnabledStatusDidChangeNotification)

A notification that UIKit posts when the system’s Button Shapes setting changes.

### Closed captions

[`isClosedCaptioningEnabled`](/documentation/UIKit/UIAccessibility/isClosedCaptioningEnabled)

A Boolean value that indicates whether the Closed Captions + SDH setting is in an enabled state.

[`closedCaptioningStatusDidChangeNotification`](/documentation/UIKit/UIAccessibility/closedCaptioningStatusDidChangeNotification)

A notification that UIKit posts when the setting for Closed Captions + SDH changes.

### Cross-fade transitions

[`prefersCrossFadeTransitions`](/documentation/UIKit/UIAccessibility/prefersCrossFadeTransitions)

A Boolean value that indicates whether the Reduce Motion and the Prefer Cross-Fade Transitions settings are in an enabled state.

[`prefersCrossFadeTransitionsStatusDidChange`](/documentation/UIKit/UIAccessibility/prefersCrossFadeTransitionsStatusDidChange)

A notification that UIKit posts when the system’s Prefer Cross-Fade Transitions setting changes.

### Differentiate without color

[`shouldDifferentiateWithoutColor`](/documentation/UIKit/UIAccessibility/shouldDifferentiateWithoutColor)

A Boolean value that indicates whether the Differentiate Without Color setting is in an enabled state.

[`differentiateWithoutColorDidChangeNotification`](/documentation/UIKit/UIAccessibility/differentiateWithoutColorDidChangeNotification)

A notification that UIKit posts when the system’s Differentiate Without Color setting changes.

### Grayscale

[`isGrayscaleEnabled`](/documentation/UIKit/UIAccessibility/isGrayscaleEnabled)

A Boolean value that indicates whether the Color Filters and the Grayscale settings are in an enabled state.

[`grayscaleStatusDidChangeNotification`](/documentation/UIKit/UIAccessibility/grayscaleStatusDidChangeNotification)

A notification that UIKit posts when the system’s Grayscale setting changes.

### Guided Access

[`isGuidedAccessEnabled`](/documentation/UIKit/UIAccessibility/isGuidedAccessEnabled)

A Boolean value that indicates whether the Guided Access setting is in an enabled state.

[`guidedAccessStatusDidChangeNotification`](/documentation/UIKit/UIAccessibility/guidedAccessStatusDidChangeNotification)

A notification that indicates when a Guided Access session starts or ends.

[`requestGuidedAccessSession(enabled:completionHandler:)`](/documentation/UIKit/UIAccessibility/requestGuidedAccessSession(enabled:completionHandler:))

Transitions the app to or from Single App mode asynchronously.

[`configureForGuidedAccess(features:enabled:completionHandler:)`](/documentation/UIKit/UIAccessibility/configureForGuidedAccess(features:enabled:completionHandler:))

Enables or disables the specified accessibility features while using Guided Access.

[`guidedAccessRestrictionState(forIdentifier:)`](/documentation/UIKit/UIAccessibility/guidedAccessRestrictionState(forIdentifier:))

Returns the restriction state for the specified guided access restriction.

[`UIAccessibility.GuidedAccessRestrictionState`](/documentation/UIKit/UIAccessibility/GuidedAccessRestrictionState)

Constants that describe the state of a restriction, either allow or deny.

[`guidedAccessErrorDomain`](/documentation/UIKit/UIAccessibility/guidedAccessErrorDomain)

A string that identifies the Guided Access error domain.

[`UIAccessibility.GuidedAccessError`](/documentation/UIKit/UIAccessibility/GuidedAccessError)

A Guided Access error.

### Hearing devices

[`hearingDevicePairedEar`](/documentation/UIKit/UIAccessibility/hearingDevicePairedEar)

The current pairing status of Made for iPhone hearing devices.

[`hearingDevicePairedEarDidChangeNotification`](/documentation/UIKit/UIAccessibility/hearingDevicePairedEarDidChangeNotification)

A notification that UIKit posts when there’s a change to the currently paired hearing devices.

### Increase contrast

[`isDarkerSystemColorsEnabled`](/documentation/UIKit/UIAccessibility/isDarkerSystemColorsEnabled)

A Boolean value that indicates whether the Increase Contrast setting is in an enabled state.

[`darkerSystemColorsStatusDidChangeNotification`](/documentation/UIKit/UIAccessibility/darkerSystemColorsStatusDidChangeNotification)

A notification that UIKit posts when the system’s Increase Contrast setting changes.

### Invert colors

[`isInvertColorsEnabled`](/documentation/UIKit/UIAccessibility/isInvertColorsEnabled)

A Boolean value that indicates whether the Classic Invert setting is in an enabled state.

[`invertColorsStatusDidChangeNotification`](/documentation/UIKit/UIAccessibility/invertColorsStatusDidChangeNotification)

A notification that UIKit posts when the settings for inverted colors change.

### Mono audio

[`isMonoAudioEnabled`](/documentation/UIKit/UIAccessibility/isMonoAudioEnabled)

A Boolean value that indicates whether the Mono Audio setting is in an enabled state.

[`monoAudioStatusDidChangeNotification`](/documentation/UIKit/UIAccessibility/monoAudioStatusDidChangeNotification)

A notification that UIKit posts when system audio changes from stereo to mono.

### On and off labels

[`isOnOffSwitchLabelsEnabled`](/documentation/UIKit/UIAccessibility/isOnOffSwitchLabelsEnabled)

A Boolean value that indicates whether the On/Off Labels setting is in an enabled state.

[`onOffSwitchLabelsDidChangeNotification`](/documentation/UIKit/UIAccessibility/onOffSwitchLabelsDidChangeNotification)

A notification that UIKit posts when the system’s On/Off Labels setting changes.

### Reduce motion

[`isReduceMotionEnabled`](/documentation/UIKit/UIAccessibility/isReduceMotionEnabled)

A Boolean value that indicates whether the Reduce Motion setting is in an enabled state.

[`reduceMotionStatusDidChangeNotification`](/documentation/UIKit/UIAccessibility/reduceMotionStatusDidChangeNotification)

A notification that UIKit posts when the system’s Reduce Motion setting changes.

### Reduce transparency

[`isReduceTransparencyEnabled`](/documentation/UIKit/UIAccessibility/isReduceTransparencyEnabled)

A Boolean value that indicates whether the Reduce Transparency setting is in an enabled state.

[`reduceTransparencyStatusDidChangeNotification`](/documentation/UIKit/UIAccessibility/reduceTransparencyStatusDidChangeNotification)

A notification that UIKit posts when the system’s Reduce Transparency setting changes.

### Shake to undo

[`isShakeToUndoEnabled`](/documentation/UIKit/UIAccessibility/isShakeToUndoEnabled)

A Boolean value that indicates whether the Shake to Undo setting is in an enabled state.

[`shakeToUndoDidChangeNotification`](/documentation/UIKit/UIAccessibility/shakeToUndoDidChangeNotification)

A notification that UIKit posts when the system’s Shake to Undo setting changes.

### Spoken content

[`isSpeakScreenEnabled`](/documentation/UIKit/UIAccessibility/isSpeakScreenEnabled)

A Boolean value that indicates whether the Speak Screen setting is in an enabled state.

[`speakScreenStatusDidChangeNotification`](/documentation/UIKit/UIAccessibility/speakScreenStatusDidChangeNotification)

A notification that UIKit posts when the system’s Speak Screen setting changes.

[`isSpeakSelectionEnabled`](/documentation/UIKit/UIAccessibility/isSpeakSelectionEnabled)

A Boolean value that indicates whether the Speak Selection setting is in an enabled state.

[`speakSelectionStatusDidChangeNotification`](/documentation/UIKit/UIAccessibility/speakSelectionStatusDidChangeNotification)

A notification that UIKit posts when the system’s Speak Selection setting changes.

### Conversions

[`convertToScreenCoordinates(_:in:)`](/documentation/UIKit/UIAccessibility/convertToScreenCoordinates(_:in:)-6dx4a)

Converts the specified path object to screen coordinates and returns a new path object with the results.

[`convertToScreenCoordinates(_:in:)`](/documentation/UIKit/UIAccessibility/convertToScreenCoordinates(_:in:)-9ziiu)

Converts the specified rectangle from view coordinates to screen coordinates.

### Convenience functions

[`focusedElement(using:)`](/documentation/UIKit/UIAccessibility/focusedElement(using:))

Returns the accessibility element that’s currently in focus by the specified assistive app.

[`registerGestureConflictWithZoom()`](/documentation/UIKit/UIAccessibility/registerGestureConflictWithZoom())

Warns users that app-specific gestures conflict with the system-defined Zoom accessibility gestures.

[`zoomFocusChanged(zoomType:toFrame:in:)`](/documentation/UIKit/UIAccessibility/zoomFocusChanged(zoomType:toFrame:in:))

Notifies the system when the app’s focus changes to a new location.

### Constants

[`UIAccessibilityTraits`](/documentation/UIKit/UIAccessibilityTraits)

Constants that describe how an accessibility element behaves.

[`UIAccessibility.AssistiveTechnologyIdentifier`](/documentation/UIKit/UIAccessibility/AssistiveTechnologyIdentifier)

Identifiers for assistive apps.

[`UIAccessibility.HearingDeviceEar`](/documentation/UIKit/UIAccessibility/HearingDeviceEar)

Constants that specify how a person is using a hearing device.

[`UIAccessibilityContainerType`](/documentation/UIKit/UIAccessibilityContainerType)

Constants that indicate the type of content in a data-based container.

[`UIAccessibilityNavigationStyle`](/documentation/UIKit/UIAccessibilityNavigationStyle)

Constants that describe how to navigate an object’s elements with an assistive app.

[`UIAccessibilityScrollDirection`](/documentation/UIKit/UIAccessibilityScrollDirection)

The direction of a scrolling action.

[`UIAccessibility.ZoomType`](/documentation/UIKit/UIAccessibility/ZoomType)

The types of system Zoom that can be in effect.

[`UIAccessibility.DirectTouchOptions`](/documentation/UIKit/UIAccessibility/DirectTouchOptions)

Constants that configure how VoiceOver produces audio for direct touch areas.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)