# GCKUIMediaController.h File

[Classes](https://developers.google.com/cast/docs/reference/ios/g_c_k_u_i_media_controller_8h#nested-classes) \| [Typedefs](https://developers.google.com/cast/docs/reference/ios/g_c_k_u_i_media_controller_8h#typedef-members) \| [Variables](https://developers.google.com/cast/docs/reference/ios/g_c_k_u_i_media_controller_8h#var-members) GCKUIMediaController.h File Reference

|---|---|
| ## Classes ||
| class | [GCKUIMediaController](https://developers.google.com/cast/docs/reference/ios/interface_g_c_k_u_i_media_controller) |
|   | A controller for UI views that are used to control or display the status of media playback on a Cast receiver. [More...](https://developers.google.com/cast/docs/reference/ios/interface_g_c_k_u_i_media_controller#details) |
|   ||
| protocol | [\<GCKUIMediaControllerDelegate\>](https://developers.google.com/cast/docs/reference/ios/protocol_g_c_k_u_i_media_controller_delegate-p) |
|   | The [GCKUIMediaController](https://developers.google.com/cast/docs/reference/ios/interface_g_c_k_u_i_media_controller "A controller for UI views that are used to control or display the status of media playback on a Cast ...") delegate protocol. [More...](https://developers.google.com/cast/docs/reference/ios/protocol_g_c_k_u_i_media_controller_delegate-p#details) |
|   ||

|---|---|
| ## Typedefs ||
| typedef NSString \*_Nonnull(\^ | [GCKUIValueFormatter](https://developers.google.com/cast/docs/reference/ios/g_c_k_u_i_media_controller_8h#a242c6aa3a97fda98bcad480512884cba) )(const id value) |
|   | A block for formatting an arbitrary object as an [**NSString**](https://goo.gl/5dXzU6). [More...](https://developers.google.com/cast/docs/reference/ios/g_c_k_u_i_media_controller_8h#a242c6aa3a97fda98bcad480512884cba) |
|   ||

|---|---|
| ## Variables ||
| const UIControlState | [GCKUIControlStateRepeatOff](https://developers.google.com/cast/docs/reference/ios/g_c_k_u_i_media_controller_8h#af2e3b11cad2f68ed2e83616a6f55849c) |
|   | Custom [**UIControlState**](https://goo.gl/tZWsqZ) for the repeat mode button. [More...](https://developers.google.com/cast/docs/reference/ios/g_c_k_u_i_media_controller_8h#af2e3b11cad2f68ed2e83616a6f55849c) |
|   ||
| const NSUInteger | [GCKUIButtonStateRepeatOff](https://developers.google.com/cast/docs/reference/ios/g_c_k_u_i_media_controller_8h#a9cf4203fa067d71629f939f72a65682b) |
|   | [GCKUIMultistateButton](https://developers.google.com/cast/docs/reference/ios/interface_g_c_k_u_i_multistate_button "A subclass of UIButton that supports multiple states. ") state for the repeat mode button. [More...](https://developers.google.com/cast/docs/reference/ios/g_c_k_u_i_media_controller_8h#a9cf4203fa067d71629f939f72a65682b) |
|   ||
| const UIControlState | [GCKUIControlStateRepeatAll](https://developers.google.com/cast/docs/reference/ios/g_c_k_u_i_media_controller_8h#ab616e2435b9490c8b4e57569c155ad11) |
|   | Custom [**UIControlState**](https://goo.gl/tZWsqZ) for the repeat mode button. [More...](https://developers.google.com/cast/docs/reference/ios/g_c_k_u_i_media_controller_8h#ab616e2435b9490c8b4e57569c155ad11) |
|   ||
| const NSUInteger | [GCKUIButtonStateRepeatAll](https://developers.google.com/cast/docs/reference/ios/g_c_k_u_i_media_controller_8h#a1d35bcffd00e85be5f109ddaa2785cf8) |
|   | [GCKUIMultistateButton](https://developers.google.com/cast/docs/reference/ios/interface_g_c_k_u_i_multistate_button "A subclass of UIButton that supports multiple states. ") state for the repeat mode button. [More...](https://developers.google.com/cast/docs/reference/ios/g_c_k_u_i_media_controller_8h#a1d35bcffd00e85be5f109ddaa2785cf8) |
|   ||
| const UIControlState | [GCKUIControlStateRepeatSingle](https://developers.google.com/cast/docs/reference/ios/g_c_k_u_i_media_controller_8h#a4dcd7d470d707bd475b18fa25d2b011b) |
|   | Custom [**UIControlState**](https://goo.gl/tZWsqZ) for the repeat mode button. [More...](https://developers.google.com/cast/docs/reference/ios/g_c_k_u_i_media_controller_8h#a4dcd7d470d707bd475b18fa25d2b011b) |
|   ||
| const NSUInteger | [GCKUIButtonStateRepeatSingle](https://developers.google.com/cast/docs/reference/ios/g_c_k_u_i_media_controller_8h#a2e2c5c1592347626406bf211d14f6708) |
|   | [GCKUIMultistateButton](https://developers.google.com/cast/docs/reference/ios/interface_g_c_k_u_i_multistate_button "A subclass of UIButton that supports multiple states. ") state for the repeat mode button. [More...](https://developers.google.com/cast/docs/reference/ios/g_c_k_u_i_media_controller_8h#a2e2c5c1592347626406bf211d14f6708) |
|   ||
| const UIControlState | [GCKUIControlStateShuffle](https://developers.google.com/cast/docs/reference/ios/g_c_k_u_i_media_controller_8h#a6d70c17bc8b9c9b24151e9e1b831d922) |
|   | Custom [**UIControlState**](https://goo.gl/tZWsqZ) for the repeat mode button. [More...](https://developers.google.com/cast/docs/reference/ios/g_c_k_u_i_media_controller_8h#a6d70c17bc8b9c9b24151e9e1b831d922) |
|   ||
| const NSUInteger | [GCKUIButtonStateShuffle](https://developers.google.com/cast/docs/reference/ios/g_c_k_u_i_media_controller_8h#a2b43202a94dafaafd2521a57cd30ba46) |
|   | [GCKUIMultistateButton](https://developers.google.com/cast/docs/reference/ios/interface_g_c_k_u_i_multistate_button "A subclass of UIButton that supports multiple states. ") state for the repeat mode button. [More...](https://developers.google.com/cast/docs/reference/ios/g_c_k_u_i_media_controller_8h#a2b43202a94dafaafd2521a57cd30ba46) |
|   ||
| const UIControlState | [GCKUIControlStatePlay](https://developers.google.com/cast/docs/reference/ios/g_c_k_u_i_media_controller_8h#a3d449d7a09a51de656b0b9f359697881) |
|   | Custom [**UIControlState**](https://goo.gl/tZWsqZ) for the play/pause toggle button. [More...](https://developers.google.com/cast/docs/reference/ios/g_c_k_u_i_media_controller_8h#a3d449d7a09a51de656b0b9f359697881) |
|   ||
| const NSUInteger | [GCKUIButtonStatePlay](https://developers.google.com/cast/docs/reference/ios/g_c_k_u_i_media_controller_8h#a031a756ae20de4f4f73a354a863038c0) |
|   | [GCKUIMultistateButton](https://developers.google.com/cast/docs/reference/ios/interface_g_c_k_u_i_multistate_button "A subclass of UIButton that supports multiple states. ") state for the play/pause toggle button. [More...](https://developers.google.com/cast/docs/reference/ios/g_c_k_u_i_media_controller_8h#a031a756ae20de4f4f73a354a863038c0) |
|   ||
| const UIControlState | [GCKUIControlStatePause](https://developers.google.com/cast/docs/reference/ios/g_c_k_u_i_media_controller_8h#afb9d0159ff3319d1e66d0b7d342739d4) |
|   | Custom [**UIControlState**](https://goo.gl/tZWsqZ) for the play/pause toggle button. [More...](https://developers.google.com/cast/docs/reference/ios/g_c_k_u_i_media_controller_8h#afb9d0159ff3319d1e66d0b7d342739d4) |
|   ||
| const NSUInteger | [GCKUIButtonStatePause](https://developers.google.com/cast/docs/reference/ios/g_c_k_u_i_media_controller_8h#ac3d1cb84e09b22e0ec35fb14bd45df9b) |
|   | [GCKUIMultistateButton](https://developers.google.com/cast/docs/reference/ios/interface_g_c_k_u_i_multistate_button "A subclass of UIButton that supports multiple states. ") state for the play/pause toggle button. [More...](https://developers.google.com/cast/docs/reference/ios/g_c_k_u_i_media_controller_8h#ac3d1cb84e09b22e0ec35fb14bd45df9b) |
|   ||
| const NSUInteger | [GCKUIButtonStatePlayLive](https://developers.google.com/cast/docs/reference/ios/g_c_k_u_i_media_controller_8h#adae3f123ccdb7b0631e038960c9fd597) |
|   | Custom [GCKUIMultistateButton](https://developers.google.com/cast/docs/reference/ios/interface_g_c_k_u_i_multistate_button "A subclass of UIButton that supports multiple states. ") state for the play/pause toggle button. [More...](https://developers.google.com/cast/docs/reference/ios/g_c_k_u_i_media_controller_8h#adae3f123ccdb7b0631e038960c9fd597) |
|   ||

## Typedef Documentation

|---|
| typedef NSString\* _Nonnull(\^ GCKUIValueFormatter)(const id value) |

A block for formatting an arbitrary object as an [**NSString**](https://goo.gl/5dXzU6).

Since
:   3.0

## Variable Documentation

|---|
| GCKUIControlStateRepeatOff |

Custom [**UIControlState**](https://goo.gl/tZWsqZ) for the repeat mode button.

Corresponds to [GCKMediaRepeatModeOff](https://developers.google.com/cast/docs/reference/ios/g_c_k_media_common_8h#aad72b610da8ac7e1785975bd5f251406a33da7481895a55310fdcf1670cb30299).

**[Deprecated:](https://developers.google.com/cast/docs/reference/ios/deprecated#_deprecated000044)**
:   Use GCKUIButtonStateRepeatOff with [GCKUIMultistateButton](https://developers.google.com/cast/docs/reference/ios/interface_g_c_k_u_i_multistate_button "A subclass of UIButton that supports multiple states. ").

    Since
    :   3.0

|---|
| GCKUIButtonStateRepeatOff |

[GCKUIMultistateButton](https://developers.google.com/cast/docs/reference/ios/interface_g_c_k_u_i_multistate_button "A subclass of UIButton that supports multiple states. ") state for the repeat mode button.

Corresponds to [GCKMediaRepeatModeOff](https://developers.google.com/cast/docs/reference/ios/g_c_k_media_common_8h#aad72b610da8ac7e1785975bd5f251406a33da7481895a55310fdcf1670cb30299).

Since
:   4.0

|---|
| GCKUIControlStateRepeatAll |

Custom [**UIControlState**](https://goo.gl/tZWsqZ) for the repeat mode button.

Corresponds to [GCKMediaRepeatModeAll](https://developers.google.com/cast/docs/reference/ios/g_c_k_media_common_8h#aad72b610da8ac7e1785975bd5f251406aa2bb146f64f9f7067cc9b819dbd55d2b).

**[Deprecated:](https://developers.google.com/cast/docs/reference/ios/deprecated#_deprecated000045)**
:   Use GCKUIButtonStateRepeatAll with [GCKUIMultistateButton](https://developers.google.com/cast/docs/reference/ios/interface_g_c_k_u_i_multistate_button "A subclass of UIButton that supports multiple states. ").

    Since
    :   3.0

|---|
| GCKUIButtonStateRepeatAll |

[GCKUIMultistateButton](https://developers.google.com/cast/docs/reference/ios/interface_g_c_k_u_i_multistate_button "A subclass of UIButton that supports multiple states. ") state for the repeat mode button.

Corresponds to [GCKMediaRepeatModeAll](https://developers.google.com/cast/docs/reference/ios/g_c_k_media_common_8h#aad72b610da8ac7e1785975bd5f251406aa2bb146f64f9f7067cc9b819dbd55d2b).

Since
:   4.0

|---|
| GCKUIControlStateRepeatSingle |

Custom [**UIControlState**](https://goo.gl/tZWsqZ) for the repeat mode button.

Corresponds to [GCKMediaRepeatModeSingle](https://developers.google.com/cast/docs/reference/ios/g_c_k_media_common_8h#aad72b610da8ac7e1785975bd5f251406a6c835238547a4ba67cd7db743fc71174).

**[Deprecated:](https://developers.google.com/cast/docs/reference/ios/deprecated#_deprecated000046)**
:   Use GCKUIButtonStateRepeatSingle with [GCKUIMultistateButton](https://developers.google.com/cast/docs/reference/ios/interface_g_c_k_u_i_multistate_button "A subclass of UIButton that supports multiple states. ").

    Since
    :   3.0

|---|
| GCKUIButtonStateRepeatSingle |

[GCKUIMultistateButton](https://developers.google.com/cast/docs/reference/ios/interface_g_c_k_u_i_multistate_button "A subclass of UIButton that supports multiple states. ") state for the repeat mode button.

Corresponds to [GCKMediaRepeatModeSingle](https://developers.google.com/cast/docs/reference/ios/g_c_k_media_common_8h#aad72b610da8ac7e1785975bd5f251406a6c835238547a4ba67cd7db743fc71174).

Since
:   4.0

|---|
| GCKUIControlStateShuffle |

Custom [**UIControlState**](https://goo.gl/tZWsqZ) for the repeat mode button.

Corresponds to [GCKMediaRepeatModeAllAndShuffle](https://developers.google.com/cast/docs/reference/ios/g_c_k_media_common_8h#aad72b610da8ac7e1785975bd5f251406ab5a91eea7a66bec4f621b6e423080641).

**[Deprecated:](https://developers.google.com/cast/docs/reference/ios/deprecated#_deprecated000047)**
:   Use GCKUIButtonStateShuffle with [GCKUIMultistateButton](https://developers.google.com/cast/docs/reference/ios/interface_g_c_k_u_i_multistate_button "A subclass of UIButton that supports multiple states. ").

    Since
    :   3.0

|---|
| GCKUIButtonStateShuffle |

[GCKUIMultistateButton](https://developers.google.com/cast/docs/reference/ios/interface_g_c_k_u_i_multistate_button "A subclass of UIButton that supports multiple states. ") state for the repeat mode button.

Corresponds to [GCKMediaRepeatModeAllAndShuffle](https://developers.google.com/cast/docs/reference/ios/g_c_k_media_common_8h#aad72b610da8ac7e1785975bd5f251406ab5a91eea7a66bec4f621b6e423080641).

Since
:   4.0

|---|
| GCKUIControlStatePlay |

Custom [**UIControlState**](https://goo.gl/tZWsqZ) for the play/pause toggle button.

Indicates media is playing.

**[Deprecated:](https://developers.google.com/cast/docs/reference/ios/deprecated#_deprecated000048)**
:   Use GCKUIButtonStatePlay with [GCKUIMultistateButton](https://developers.google.com/cast/docs/reference/ios/interface_g_c_k_u_i_multistate_button "A subclass of UIButton that supports multiple states. ").

    Since
    :   3.0

|---|
| GCKUIButtonStatePlay |

[GCKUIMultistateButton](https://developers.google.com/cast/docs/reference/ios/interface_g_c_k_u_i_multistate_button "A subclass of UIButton that supports multiple states. ") state for the play/pause toggle button.

Indicates media is playing.

Since
:   4.0

|---|
| GCKUIControlStatePause |

Custom [**UIControlState**](https://goo.gl/tZWsqZ) for the play/pause toggle button.

Indicates media is paused.

**[Deprecated:](https://developers.google.com/cast/docs/reference/ios/deprecated#_deprecated000049)**
:   Use GCKUIButtonStatePause with [GCKUIMultistateButton](https://developers.google.com/cast/docs/reference/ios/interface_g_c_k_u_i_multistate_button "A subclass of UIButton that supports multiple states. ").

    Since
    :   3.0

|---|
| GCKUIButtonStatePause |

[GCKUIMultistateButton](https://developers.google.com/cast/docs/reference/ios/interface_g_c_k_u_i_multistate_button "A subclass of UIButton that supports multiple states. ") state for the play/pause toggle button.

Indicates media is paused.

Since
:   4.0

|---|
| GCKUIButtonStatePlayLive |

Custom GCKUIMultistateButton state for the play/pause toggle button.

Indicates media is playing and is live.

Since
:   4.0