<!--
{
  "availability" : [
    "iOS: 14.0.0 -",
    "iPadOS: 14.0.0 -",
    "macCatalyst: 14.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "CarPlay",
  "identifier" : "/documentation/CarPlay/CPTabBarTemplateDelegate",
  "metadataVersion" : "0.1.0",
  "role" : "Protocol",
  "symbol" : {
    "kind" : "Protocol",
    "modules" : [
      "CarPlay"
    ],
    "preciseIdentifier" : "c:objc(pl)CPTabBarTemplateDelegate"
  },
  "title" : "CPTabBarTemplateDelegate"
}
-->

# CPTabBarTemplateDelegate

The methods an object implements to act as the delegate for a tab bar template.

```
@MainActor protocol CPTabBarTemplateDelegate : NSObjectProtocol
```

## Overview

You use the `CPTabBarTemplateDelegate` protocol to respond to a tab bar template’s events. The protocol defines methods that the template calls in response to these events, and your implementation provides the appropriate behavior when the events occur. For example, reloading a tab’s contents when the user selects it to make sure it’s displaying the latest data.

## Topics

### Managing the Selected Template

[`-  tabBarTemplate:didSelectTemplate:`](/documentation/CarPlay/CPTabBarTemplateDelegate/tabBarTemplate(_:didSelect:))

Tells the delegate when the tab bar selects the specified template.

## Relationships

### Inherits From

[`NSObjectProtocol`](/documentation/ObjectiveC/NSObjectProtocol)

---

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)