---
title: "init(image:imageShape:title:accessorySymbolName:)"
framework: carplay
role: symbol
role_heading: Initializer
path: "carplay/cplistimagerowitemimagegridelement/init(image:imageshape:title:accessorysymbolname:)"
---

# init(image:imageShape:title:accessorySymbolName:)

Initialize an element that is constituted of an image and an image shape.

## Declaration

```swift
init(image: UIImage, imageShape: CPListImageRowItemImageGridElement.Shape, title: String, accessorySymbolName: String?)
```

## Parameters

- `image`: The image associated to the element.
- `imageShape`: The @c CPListImageRowItemImageGridElementShape shape being applied on the image.
- `title`: The title of the element.
- `accessorySymbolName`: The system symbol used as an accessory view.

## Discussion

Discussion When providing an image, your app should provide a @c UIImage that is display-ready. If necessary for the image, provide light and dark styles by using an asset from your asset catalog, prepared with light and dark styles or by using @c UIImageAsset to combine two @c UIImage instances into a single image with both styles. UIImageAsset is used to combine multiple UIImages with different trait collections into a single UIImage. note: The expected image size is given by +[CPListImageRowItemImageGridElement maximumImageSize]. Images provided will be resized to this size if necessary. To properly size your images, your app should size them to the display scale of the car screen. See -[CPInterfaceController carTraitCollection].
