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

# UIAccessibilityTraits

Constants that describe how an accessibility element behaves.

```
struct UIAccessibilityTraits
```

## Overview

Set these traits to tell an assistive app how an accessibility element behaves or how to treat it.

## Topics

### Constants

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

The accessibility element has no traits.

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

The accessibility element behaves like a button.

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

The accessibility element behaves like a link.

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

The accessibility element behaves like an image.

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

The accessibility element behaves like a search field.

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

The accessibility element behaves like a toggle button.

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

The accessibility element behaves like a keyboard key.

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

The accessibility element behaves like static text that can’t change.

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

The accessibility element is a header that divides content into sections, such as the title of a navigation bar.

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

The accessibility element behaves like a tab bar.

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

The accessibility element provides summary information when the app starts.

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

The accessibility element is currently in a selected state.

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

The accessibility element isn’t in an enabled state and doesn’t respond to user interaction.

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

The accessibility element allows continuous adjustment through a range of values.

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

The accessibility element allows direct touch interaction for VoiceOver users.

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

The accessibility element frequently updates its label or value.

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

The accessibility element causes an automatic page turn when VoiceOver finishes reading the text within it.

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

The accessibility element plays its own sound when the user activates it.

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

The accessibility element starts a media session when the user activates it.

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

The accessibility element supports zooming in and out on its content.



---

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)