<!--
{
  "availability" : [
    "iOS: 12.0.0 -",
    "iPadOS: 12.0.0 -",
    "macCatalyst: 13.1.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "CarPlay",
  "identifier" : "/documentation/CarPlay/CPManeuver",
  "metadataVersion" : "0.1.0",
  "role" : "Class",
  "symbol" : {
    "kind" : "Class",
    "modules" : [
      "CarPlay"
    ],
    "preciseIdentifier" : "c:objc(cs)CPManeuver"
  },
  "title" : "CPManeuver"
}
-->

# CPManeuver

An object that describes a single navigation instruction.

```
class CPManeuver
```

## Overview

You use maneuvers to provide turn-by-turn guidance in navigation apps. Each maneuver represents a single navigation instruction and can include a symbol, an instruction, and estimates for remaining time and distance.

You supply an instruction as an array of variants, each with a different length. CarPlay chooses the longest variant that best fits the available space on the screen. You can optionally provide attributed variants that embed images using <doc://com.apple.documentation/documentation/UIKit/NSTextAttachment>. See [`attributedInstructionVariants`](/documentation/CarPlay/CPManeuver/attributedInstructionVariants) for more information.

In addition to the route guidance panel, you can show maneuvers on the CarPlay dashboard or in notification banners. Use the relevant properties to provide context-specific instructions and images.

## Topics

### Providing instructions

[`dashboardInstructionVariants`](/documentation/CarPlay/CPManeuver/dashboardInstructionVariants)

An array of instruction variants for the CarPlay dashboard.

[`notificationInstructionVariants`](/documentation/CarPlay/CPManeuver/notificationInstructionVariants)

An array of instruction variants for notification banners.

### Providing attributed instructions

[`attributedInstructionVariants`](/documentation/CarPlay/CPManeuver/attributedInstructionVariants)

An array of attributed instruction variants for the maneuver.

[`dashboardAttributedInstructionVariants`](/documentation/CarPlay/CPManeuver/dashboardAttributedInstructionVariants)

An array of attributed instruction variants for the CarPlay dashboard.

[`notificationAttributedInstructionVariants`](/documentation/CarPlay/CPManeuver/notificationAttributedInstructionVariants)

An array of attributed instruction variants for notification banners.

### Providing travel estimates

[`initialTravelEstimates`](/documentation/CarPlay/CPManeuver/initialTravelEstimates)

An object that describes the distance and time remaining before the maneuver completes.

### Providing symbol images

[`symbolImage`](/documentation/CarPlay/CPManeuver/symbolImage)

An image that represents the maneuver.

[`dashboardSymbolImage`](/documentation/CarPlay/CPManeuver/dashboardSymbolImage)

An image for the CarPlay dashboard that represents the maneuver.

[`notificationSymbolImage`](/documentation/CarPlay/CPManeuver/notificationSymbolImage)

An image for notification banners that represents the maneuver.

[`symbolSet`](/documentation/CarPlay/CPManeuver/symbolSet)

An image set that represents the maneuver.

### Providing junction images

[`junctionImage`](/documentation/CarPlay/CPManeuver/junctionImage)

An image that represents an upcoming junction.

[`dashboardJunctionImage`](/documentation/CarPlay/CPManeuver/dashboardJunctionImage)

An image for the CarPlay dashboard that represents an upcoming junction.

### Providing junction information

[`junctionType`](/documentation/CarPlay/CPManeuver/junctionType)

A value that represents the type of junction associated with this maneuver.

[`junctionExitAngle`](/documentation/CarPlay/CPManeuver/junctionExitAngle)

The angle of the exit road of this junction.

[`junctionElementAngles`](/documentation/CarPlay/CPManeuver/junctionElementAngles)

A set of angles for the rest of the roads of this junction.

### Providing maneuver information

[`maneuverType`](/documentation/CarPlay/CPManeuver/maneuverType)

A value that represents the type of maneuver.

[`roadFollowingManeuverVariants`](/documentation/CarPlay/CPManeuver/roadFollowingManeuverVariants)

An array of strings that represent the names of the road following this maneuver, arranged from most to least preferred.

[`linkedLaneGuidance`](/documentation/CarPlay/CPManeuver/linkedLaneGuidance)

A value that represents lane guidance associated with this maneuver.

[`highwayExitLabel`](/documentation/CarPlay/CPManeuver/highwayExitLabel)

A string that describes a highway exit.

[`trafficSide`](/documentation/CarPlay/CPManeuver/trafficSide)

A value that represents which side of the road the traffic drives on.

### Providing additional information

[`userInfo`](/documentation/CarPlay/CPManeuver/userInfo)

A custom object associated with the maneuver.

### Instance properties

[`cardBackgroundColor`](/documentation/CarPlay/CPManeuver/cardBackgroundColor)



---

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)