---
updatedAt: 2026-04-08T10:22:04.000Z
---

# Supported controls

With the Tealeaf iOS SDK, you can track every navigation choice, every touched button, and the contents of every field.

## List of supported controls

* SegmentBar
* StatusBar
* UIActivityIndicator
* UIAlertController - Gestures are not captured when using `UIAlertController`.
* UIAlertView
* UIButton
* UICollectionView
* UIDatePicker
* UIImageView
* UILabel
* UINavigationView - Basic navigation bar support only.
* UIPageControl
* UIPickerView
* UIProgressView - Custom graphics are not supported.
* UIScrollView
* UISearchBar
* UISegmentedControl - At the time of this publication, `UISegmentControl` is not supported with replay when using an Tealeaf on-premise Replay server.
* UISlider
  * Custom graphics are not supported.
  * At the time of this publication, `UISlider` is not supported with replay when using an Tealeaf on-premise Replay server.
* UIStepper - At the time of this publication, `UIStepper` is not supported with replay when using an Tealeaf on-premise Replay server.
* UISwitch - At the time of this publication, `UISwitch` is not supported with replay when using an Tealeaf on-premise Replay server.
* UITableView
* UITableViewCell
* UITabView - Tab bar icons are not supported.
* UITextField
* UITextView
* UIView
* WebView
* WKWebView - Supported in iOS 8.1, 8.3, and later.

## List of unsupported controls

* MKMapView

## Table views

Table view events are posted when the selected row in the posting table view changes.

| Name                            | Short name             | Description                                                     |
| :------------------------------ | :--------------------- | :-------------------------------------------------------------- |
| Table View Selection Did Change | selectList:valueChange | Posted when the selected row in the posting table view changes. |

## Text fields

Text field events are posted when a text field loses focus.

> 📘 Note:
>
> A text field end editing event occurs only when the keyboard is hidden, or the text cursor moves to another text field or text view. If the user interacts with other controls before dismissing the keyboard or editing other text, this event can seem to appear out of sequence.

| Name                       | Short name         | Description                           |
| :------------------------- | :----------------- | :------------------------------------ |
| Text Field Did End Editing | textBox:textChange | Posted when a text field loses focus. |

## Secure text fields

Secure text field events are posted when a security text field loses focus.

Secure text fields are instances of `UITextField`, where the `secureTextEntry` property of its `UITextInputTraits` is set to `YES`.

| Name                              | Short name         | Description                                    |
| :-------------------------------- | :----------------- | :--------------------------------------------- |
| Secure Text Field Did End Editing | textBox:textChange | Posted when a security text field loses focus. |

The name-value pairs are the same as for \[Text fields]\(#Text fields).

## Text views

Text view events are posted when a text view loses focus.

> 📘 Note:
>
> Text views can contain a great deal of information. For large text views, try masking the data by setting the masking level to `1`.

| Name                      | Short name         | Description                          |
| :------------------------ | :----------------- | :----------------------------------- |
| Text View Did End Editing | textBox:textChange | Posted when a text view loses focus. |

> 📘 Note:
>
> A text field end editing event occurs only when the keyboard is hidden or the text cursor moves to another text field or text view. If the user interacts with other controls before dismissing the keyboard or editing other text, this event can seem to appear out of sequence.

## Secure text views

Secure text view events are posted when a secure text view loses focus.\
Secure text views are instances of `UITextView`, where the `secureTextEntry` property of its `UITextInputTraits` is set to `YES`.

| Name                             | Short name         | Description                                 |
| :------------------------------- | :----------------- | :------------------------------------------ |
| Secure Text View Did End Editing | textBox:textChange | Posted when a secure text view loses focus. |

## Alert views

Alert view events are posted for alerts. There are different types of alert views: show and clicked button.

Show alert views

| Name                    | Short name          | Description                       |
| :---------------------- | :------------------ | :-------------------------------- |
| Alert View Show In View | AlertViewShowInView | Posted when an alert view appear. |

Each alert view show event generates a series of name-value pairs.

| Name      | Value                               |
| :-------- | :---------------------------------- |
| baseClass | The base class name, `UIAlertView`. |
| title     | The title of the alert view.        |
| message   | The message body of the alert view. |

Clicked button alert views

| Name                      | Short name             | Description                                    |
| :------------------------ | :--------------------- | :--------------------------------------------- |
| Alert View Clicked Button | AlertViewClickedButton | Posted when an alert view's button is clicked. |

Each alert view clicked button event generates a series of name-value pairs.

| Name        | Value                                                        |
| :---------- | :----------------------------------------------------------- |
| baseClass   | The name of the class, usually `UIAlertView`.                |
| title       | The text that appears in the alert view's title bar.         |
| message     | The message that is displayed in the body of the alert view. |
| buttonTitle | The title of the clicked button.                             |

## View controllers

View controller events are posted when a view controller either appears or disappears.

| Name                          | Short name | Description                                                                                       |
| :---------------------------- | :--------- | :------------------------------------------------------------------------------------------------ |
| View Controller Did Appear    | screenview | Posted after a view controller appears. Posted as JSON message `screenview` and type `LOAD`.      |
| View Controller Did Disappear | screenview | Posted after a view controller disappears. Posted as JSON message `screenview` and type `UNLOAD`. |

## Synchronous server connections

Synchronous server connection events are posted when a request is either sent or results in an error.

| Name                                | Short name | Description                                |
| :---------------------------------- | :--------- | :----------------------------------------- |
| Send Synchronous Request            | connection | Posted when a request is sent.             |
| Send Synchronous Request With Error | connection | Posted when a request results in an error. |

## Asynchronous server connections

Asynchronous server connection events are posted when a request starts, receives a response, completes successfully, or results in an error.

Asynchronous server requests

| Name            | Short name | Description                   |
| :-------------- | :--------- | :---------------------------- |
| Connection Init | connection | Posted when a request starts. |

Asynchronous server responses

| Name                            | Short name | Description                               |
| :------------------------------ | :--------- | :---------------------------------------- |
| Connection Did Receive Response | connection | Posted when a request receives a respons. |

Asynchronous server successful responses

| Name                          | Short name | Description                                   |
| :---------------------------- | :--------- | :-------------------------------------------- |
| Connection Did Finish Loading | connection | Posted when a request successfully completes. |

Asynchronous server response errors

| Name                           | Short name | Description                                |
| :----------------------------- | :--------- | :----------------------------------------- |
| Connection Did Fail With Error | connection | Posted when a request results in an error. |

## Unhandled exception

Unhandled exception events are posted when there is an unhandled Objective-C exception.

| Item ID | Name      | Short name | Description                                              |
| :------ | :-------- | :--------- | :------------------------------------------------------- |
| 241     | Exception | exception  | Posted when there is an unhandled Objective-C exception. |

## Error

An error event is logged by a call to the error logging method.

| Name  | Short name | Description                                                           |
| :---- | :--------- | :-------------------------------------------------------------------- |
| Error | exception  | An NSError logged by a call to one of the `logNSErrorEvent:` methods. |

## Network connectivity

A network connectivity event is posted when the network status changes.

| <p>Name</p>                         | <p>Short name</p>          | <p>Description</p>                                                                                                                                                                                                       |
| :---------------------------------- | :------------------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| <p>Network Reachability Changed</p> | <p>networkReachability</p> | <p>Posted when the network status changes. The statuses follow.</p><ul><li><code>Unknown</code></li><li><code>NotReachable</code></li><li><code>ReachableViaWiFi</code></li><li><code>ReachableViaWWAN</code> </li></ul> |

## Crash

A crash event is posted when an abnormal termination is detected.

| Name  | Short name | Description                                                                                                                                                                      |
| :---- | :--------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Crash | exception  | Posted when the `iOS SDK` notices (during a subsequent run) that the application did not terminate normally while in the foreground for the session in which this event appears. |

## Button touch events

Button touch events are posted when a button touch is complete.

| Name                   | Short name   | Description                             |
| :--------------------- | :----------- | :-------------------------------------- |
| Button Touch Up Inside | button:click | Posted when a button touch is complete. |