Added in [API level 11](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels) Summary: [Methods](https://developer.android.com/reference/android/view/ActionMode.Callback#pubmethods)

# ActionMode.Callback

*** ** * ** ***

` public static interface ActionMode.Callback `   
` `

|---|
| android.view.ActionMode.Callback |

Known indirect subclasses [AbsListView.MultiChoiceModeListener](https://developer.android.com/reference/android/widget/AbsListView.MultiChoiceModeListener), [ActionMode.Callback2](https://developer.android.com/reference/android/view/ActionMode.Callback2) [AbsListView.MultiChoiceModeListener](https://developer.android.com/reference/android/widget/AbsListView.MultiChoiceModeListener) A MultiChoiceModeListener receives events for `https://developer.android.com/reference/android/widget/AbsListView#CHOICE_MODE_MULTIPLE_MODAL`. [ActionMode.Callback2](https://developer.android.com/reference/android/view/ActionMode.Callback2) Extension of `https://developer.android.com/reference/android/view/ActionMode.Callback` to provide content rect information.   

*** ** * ** ***

Callback interface for action modes. Supplied to `https://developer.android.com/reference/android/view/View#startActionMode(android.view.ActionMode.Callback)`, a Callback configures and handles events raised by a user's interaction with an action mode.

An action mode's lifecycle is as follows:

- `https://developer.android.com/reference/android/view/ActionMode.Callback#onCreateActionMode(android.view.ActionMode,%20android.view.Menu)` once on initial creation
- `https://developer.android.com/reference/android/view/ActionMode.Callback#onPrepareActionMode(android.view.ActionMode,%20android.view.Menu)` after creation and any time the `https://developer.android.com/reference/android/view/ActionMode` is invalidated
- `https://developer.android.com/reference/android/view/ActionMode.Callback#onActionItemClicked(android.view.ActionMode,%20android.view.MenuItem)` any time a contextual action button is clicked
- `https://developer.android.com/reference/android/view/ActionMode.Callback#onDestroyActionMode(android.view.ActionMode)` when the action mode is closed

<br />

## Summary

| ### Public methods ||
|---|---|
| ` abstract boolean` | ` https://developer.android.com/reference/android/view/ActionMode.Callback#onActionItemClicked(android.view.ActionMode,%20android.view.MenuItem)(https://developer.android.com/reference/android/view/ActionMode mode, https://developer.android.com/reference/android/view/MenuItem item) ` Called to report a user click on an action button. |
| ` abstract boolean` | ` https://developer.android.com/reference/android/view/ActionMode.Callback#onCreateActionMode(android.view.ActionMode,%20android.view.Menu)(https://developer.android.com/reference/android/view/ActionMode mode, https://developer.android.com/reference/android/view/Menu menu) ` Called when action mode is first created. |
| ` abstract void` | ` https://developer.android.com/reference/android/view/ActionMode.Callback#onDestroyActionMode(android.view.ActionMode)(https://developer.android.com/reference/android/view/ActionMode mode) ` Called when an action mode is about to be exited and destroyed. |
| ` abstract boolean` | ` https://developer.android.com/reference/android/view/ActionMode.Callback#onPrepareActionMode(android.view.ActionMode,%20android.view.Menu)(https://developer.android.com/reference/android/view/ActionMode mode, https://developer.android.com/reference/android/view/Menu menu) ` Called to refresh an action mode's action menu whenever it is invalidated. |

## Public methods

### onActionItemClicked

Added in [API level 11](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public abstract boolean onActionItemClicked (ActionMode mode, 
                MenuItem item)
```

Called to report a user click on an action button.

<br />

| Parameters ||
|---|---|
| `mode` | `ActionMode`: The current ActionMode <br /> |
| `item` | `MenuItem`: The item that was clicked <br /> |

| Returns ||
|---|---|
| `boolean` | true if this callback handled the event, false if the standard MenuItem invocation should continue. <br /> |

### onCreateActionMode

Added in [API level 11](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public abstract boolean onCreateActionMode (ActionMode mode, 
                Menu menu)
```

Called when action mode is first created. The menu supplied will be used to generate action buttons for the action mode.

<br />

| Parameters ||
|---|---|
| `mode` | `ActionMode`: ActionMode being created <br /> |
| `menu` | `Menu`: Menu used to populate action buttons <br /> |

| Returns ||
|---|---|
| `boolean` | true if the action mode should be created, false if entering this mode should be aborted. <br /> |

### onDestroyActionMode

Added in [API level 11](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public abstract void onDestroyActionMode (ActionMode mode)
```

Called when an action mode is about to be exited and destroyed.

<br />

| Parameters ||
|---|---|
| `mode` | `ActionMode`: The current ActionMode being destroyed <br /> |

### onPrepareActionMode

Added in [API level 11](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public abstract boolean onPrepareActionMode (ActionMode mode, 
                Menu menu)
```

Called to refresh an action mode's action menu whenever it is invalidated.

<br />

| Parameters ||
|---|---|
| `mode` | `ActionMode`: ActionMode being prepared <br /> |
| `menu` | `Menu`: Menu used to populate action buttons <br /> |

| Returns ||
|---|---|
| `boolean` | true if the menu or action mode was updated, false otherwise. <br /> |