---
title: TVTopShelfCarouselItem
framework: tvservices
role: symbol
role_heading: Class
path: tvservices/tvtopshelfcarouselitem
---

# TVTopShelfCarouselItem

An item containing images, video, and other information that you want to display using a carousel-based interface.

## Declaration

```swift
class TVTopShelfCarouselItem
```

## Overview

Overview A TVTopShelfCarouselItem object offers a more dynamic way to present your content than section-based items. When a carousel item first appears, it displays either a static image or a short looping video as its background. When the navigation focus stops on the item, the system plays the video in the item’s previewVideoURL property. Create one or more TVTopShelfCarouselItem objects and fill them with information about your content. The system determines which properties of the object to display based on the content style. For the TVTopShelfCarouselContent.Style.details style, the system displays all of the information in your carousel item. For the TVTopShelfCarouselContent.Style.actions style, the system focuses on the actions associated with your item. To specify the actions for both styles, use the inherited playAction and displayAction properties of the object.

## Topics

### Specifying the Item Details

- [contextTitle](tvservices/tvtopshelfcarouselitem/contexttitle.md)
- [summary](tvservices/tvtopshelfcarouselitem/summary.md)
- [genre](tvservices/tvtopshelfcarouselitem/genre.md)
- [duration](tvservices/tvtopshelfcarouselitem/duration.md)
- [creationDate](tvservices/tvtopshelfcarouselitem/creationdate.md)

### Specifying the Content Previews

- [cinemagraphURL](tvservices/tvtopshelfcarouselitem/cinemagraphurl.md)
- [previewVideoURL](tvservices/tvtopshelfcarouselitem/previewvideourl.md)

### Adding Media Badges

- [mediaOptions](tvservices/tvtopshelfcarouselitem/mediaoptions-swift.property.md)
- [TVTopShelfCarouselItem.MediaOptions](tvservices/tvtopshelfcarouselitem/mediaoptions-swift.struct.md)

### Adding Custom Attributes

- [namedAttributes](tvservices/tvtopshelfcarouselitem/namedattributes.md)
- [TVTopShelfNamedAttribute](tvservices/tvtopshelfnamedattribute.md)

## Relationships

### Inherits From

- [TVTopShelfItem](tvservices/tvtopshelfitem.md)

### Conforms To

- [CVarArg](swift/cvararg.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)

## See Also

### Carousel content

- [TVTopShelfCarouselContent](tvservices/tvtopshelfcarouselcontent.md)
