---
title: "addMenuItem(with:title:action:)"
framework: watchkit
role: symbol
role_heading: Instance Method
path: "watchkit/wkinterfacecontroller/addmenuitem(with:title:action:)-1q2zj"
---

# addMenuItem(with:title:action:)

Adds an action to the context menu by using an image provided by your WatchKit extension.

## Declaration

```swift
func addMenuItem(with image: UIImage, title: String, action: Selector)
```

## Parameters

- `image`: The template image to be used for the action. Only the alpha channel of the image is used. This parameter must not be nil. For information about the dimensions for menu images, see https://developer.apple.com/watch/human-interface-guidelines/.
- `title`: The title string to be displayed underneath the image. Title strings should be reasonably short. Any text that cannot be displayed is truncated. This parameter must not be nil or an empty string.
- `action`: The action method to be called when the action is tapped. The method must be defined on the current interface controller object. This parameter must not be nil.

## Discussion

Discussion Use this method to append an action to the interface controller’s context menu. If the menu already has four items, additional items are ignored.

## See Also

### Deprecated symbols

- [Text Response Key](watchkit/text-response-key.md)
- [addMenuItem(withImageNamed:title:action:)](watchkit/wkinterfacecontroller/addmenuitem(withimagenamed:title:action:).md)
- [addMenuItem(with:title:action:)](watchkit/wkinterfacecontroller/addmenuitem(with:title:action:)-6pb4t.md)
- [beginGlanceUpdates()](watchkit/wkinterfacecontroller/beginglanceupdates().md)
- [clearAllMenuItems()](watchkit/wkinterfacecontroller/clearallmenuitems().md)
- [endGlanceUpdates()](watchkit/wkinterfacecontroller/endglanceupdates().md)
- [handleUserActivity(_:)](watchkit/wkinterfacecontroller/handleuseractivity(_:).md)
- [presentController(_:)](watchkit/wkinterfacecontroller/presentcontroller(_:).md)
- [reloadRootControllers(withNames:contexts:)](watchkit/wkinterfacecontroller/reloadrootcontrollers(withnames:contexts:).md)
- [updateUserActivity(_:userInfo:webpageURL:)](watchkit/wkinterfacecontroller/updateuseractivity(_:userinfo:webpageurl:).md)
- [WKMenuItemIcon](watchkit/wkmenuitemicon.md)
