Added in [API level 1](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels) Summary: [Inherited Constants](https://developer.android.com/reference/android/text/method/CharacterPickerDialog#inhconstants) \| [Ctors](https://developer.android.com/reference/android/text/method/CharacterPickerDialog#pubctors) \| [Methods](https://developer.android.com/reference/android/text/method/CharacterPickerDialog#pubmethods) \| [Protected Methods](https://developer.android.com/reference/android/text/method/CharacterPickerDialog#promethods) \| [Inherited Methods](https://developer.android.com/reference/android/text/method/CharacterPickerDialog#inhmethods)

# CharacterPickerDialog

*** ** * ** ***

` public class CharacterPickerDialog `   
` ` ` extends https://developer.android.com/reference/android/app/Dialog ` ` implements https://developer.android.com/reference/android/widget/AdapterView.OnItemClickListener, https://developer.android.com/reference/android/view/View.OnClickListener `

|---|---|---|
| [java.lang.Object](https://developer.android.com/reference/java/lang/Object) |||
| ↳ | [android.app.Dialog](https://developer.android.com/reference/android/app/Dialog) ||
|   | ↳ | android.text.method.CharacterPickerDialog |

<br />

*** ** * ** ***

Dialog for choosing accented characters related to a base character.

## Summary

### Inherited constants

From interface `https://developer.android.com/reference/android/content/DialogInterface` `int` `https://developer.android.com/reference/android/content/DialogInterface#BUTTON1`

*This constant was deprecated in API level 15. Use `https://developer.android.com/reference/android/content/DialogInterface#BUTTON_POSITIVE`*
`int` `https://developer.android.com/reference/android/content/DialogInterface#BUTTON2`

*This constant was deprecated in API level 15. Use `https://developer.android.com/reference/android/content/DialogInterface#BUTTON_NEGATIVE`*
`int` `https://developer.android.com/reference/android/content/DialogInterface#BUTTON3`

*This constant was deprecated in API level 15. Use `https://developer.android.com/reference/android/content/DialogInterface#BUTTON_NEUTRAL`*
`int` `https://developer.android.com/reference/android/content/DialogInterface#BUTTON_NEGATIVE`

The identifier for the negative button.
`int` `https://developer.android.com/reference/android/content/DialogInterface#BUTTON_NEUTRAL`

The identifier for the neutral button.
`int` `https://developer.android.com/reference/android/content/DialogInterface#BUTTON_POSITIVE`

The identifier for the positive button.

| ### Public constructors ||
|---|---|
| ` https://developer.android.com/reference/android/text/method/CharacterPickerDialog#CharacterPickerDialog(android.content.Context,%20android.view.View,%20android.text.Editable,%20java.lang.String,%20boolean)(https://developer.android.com/reference/android/content/Context context, https://developer.android.com/reference/android/view/View view, https://developer.android.com/reference/android/text/Editable text, https://developer.android.com/reference/java/lang/String options, boolean insert) ` Creates a new CharacterPickerDialog that presents the specified `options` for insertion or replacement (depending on the sense of `insert`) into `text`. |

| ### Public methods ||
|---|---|
| ` void` | ` https://developer.android.com/reference/android/text/method/CharacterPickerDialog#onClick(android.view.View)(https://developer.android.com/reference/android/view/View v) ` Handles clicks on the Cancel button. |
| ` void` | ` https://developer.android.com/reference/android/text/method/CharacterPickerDialog#onItemClick(android.widget.AdapterView,%20android.view.View,%20int,%20long)(https://developer.android.com/reference/android/widget/AdapterView<T extends https://developer.android.com/reference/android/widget/Adapter> parent, https://developer.android.com/reference/android/view/View view, int position, long id) ` Handles clicks on the character buttons. |

| ### Protected methods ||
|---|---|
| ` void` | ` https://developer.android.com/reference/android/text/method/CharacterPickerDialog#onCreate(android.os.Bundle)(https://developer.android.com/reference/android/os/Bundle savedInstanceState) ` Similar to `https://developer.android.com/reference/android/app/Activity#onCreate(android.os.Bundle)`, you should initialize your dialog in this method, including calling `https://developer.android.com/reference/android/app/Dialog#setContentView(android.view.View)`. |

### Inherited methods

From class ` https://developer.android.com/reference/android/app/Dialog ` ` void` ` https://developer.android.com/reference/android/app/Dialog#addContentView(android.view.View,%20android.view.ViewGroup.LayoutParams)(https://developer.android.com/reference/android/view/View view, https://developer.android.com/reference/android/view/ViewGroup.LayoutParams params) `

Add an additional content view to the screen.
` void` ` https://developer.android.com/reference/android/app/Dialog#cancel()() `

Cancel the dialog.
` void` ` https://developer.android.com/reference/android/app/Dialog#closeOptionsMenu()() ` ` void` ` https://developer.android.com/reference/android/app/Dialog#create()() `

Forces immediate creation of the dialog.
` void` ` https://developer.android.com/reference/android/app/Dialog#dismiss()() `

Dismiss this dialog, removing it from the screen.
` boolean` ` https://developer.android.com/reference/android/app/Dialog#dispatchGenericMotionEvent(android.view.MotionEvent)(https://developer.android.com/reference/android/view/MotionEvent ev) `

Called to process generic motion events.
` boolean` ` https://developer.android.com/reference/android/app/Dialog#dispatchKeyEvent(android.view.KeyEvent)(https://developer.android.com/reference/android/view/KeyEvent event) `

Called to process key events.
` boolean` ` https://developer.android.com/reference/android/app/Dialog#dispatchKeyShortcutEvent(android.view.KeyEvent)(https://developer.android.com/reference/android/view/KeyEvent event) `

Called to process a key shortcut event.
` boolean` ` https://developer.android.com/reference/android/app/Dialog#dispatchPopulateAccessibilityEvent(android.view.accessibility.AccessibilityEvent)(https://developer.android.com/reference/android/view/accessibility/AccessibilityEvent event) `

Called to process population of `https://developer.android.com/reference/android/view/accessibility/AccessibilityEvent`s.
` boolean` ` https://developer.android.com/reference/android/app/Dialog#dispatchTouchEvent(android.view.MotionEvent)(https://developer.android.com/reference/android/view/MotionEvent ev) `

Called to process touch screen events.
` boolean` ` https://developer.android.com/reference/android/app/Dialog#dispatchTrackballEvent(android.view.MotionEvent)(https://developer.android.com/reference/android/view/MotionEvent ev) `

Called to process trackball events.
` <T extends https://developer.android.com/reference/android/view/View> T` ` https://developer.android.com/reference/android/app/Dialog#findViewById(int)(int id) `

Finds the first descendant view with the given ID or `null` if the ID is invalid (\< 0), there is no matching view in the hierarchy, or the dialog has not yet been fully created (for example, via `https://developer.android.com/reference/android/app/Dialog#show()` or `https://developer.android.com/reference/android/app/Dialog#create()`).
` https://developer.android.com/reference/android/app/ActionBar` ` https://developer.android.com/reference/android/app/Dialog#getActionBar()() `

Retrieve the `https://developer.android.com/reference/android/app/ActionBar` attached to this dialog, if present.
` final https://developer.android.com/reference/android/content/Context` ` https://developer.android.com/reference/android/app/Dialog#getContext()() `

Retrieve the Context this Dialog is running in.
` https://developer.android.com/reference/android/view/View` ` https://developer.android.com/reference/android/app/Dialog#getCurrentFocus()() `

Call `https://developer.android.com/reference/android/view/Window#getCurrentFocus()` on the Window if this Activity to return the currently focused view.
` https://developer.android.com/reference/android/view/LayoutInflater` ` https://developer.android.com/reference/android/app/Dialog#getLayoutInflater()() ` ` https://developer.android.com/reference/android/window/OnBackInvokedDispatcher` ` https://developer.android.com/reference/android/app/Dialog#getOnBackInvokedDispatcher()() `

Returns the `https://developer.android.com/reference/android/window/OnBackInvokedDispatcher` instance associated with the window that this dialog is attached to.
` final https://developer.android.com/reference/android/app/Activity` ` https://developer.android.com/reference/android/app/Dialog#getOwnerActivity()() `

Returns the Activity that owns this Dialog.
` final https://developer.android.com/reference/android/view/SearchEvent` ` https://developer.android.com/reference/android/app/Dialog#getSearchEvent()() `

During the onSearchRequested() callbacks, this function will return the `https://developer.android.com/reference/android/view/SearchEvent` that triggered the callback, if it exists.
` final int` ` https://developer.android.com/reference/android/app/Dialog#getVolumeControlStream()() ` ` https://developer.android.com/reference/android/view/Window` ` https://developer.android.com/reference/android/app/Dialog#getWindow()() `

Retrieve the current Window for the activity.
` void` ` https://developer.android.com/reference/android/app/Dialog#hide()() `

Hide the dialog, but do not dismiss it.
` void` ` https://developer.android.com/reference/android/app/Dialog#invalidateOptionsMenu()() ` ` boolean` ` https://developer.android.com/reference/android/app/Dialog#isShowing()() ` ` void` ` https://developer.android.com/reference/android/app/Dialog#onActionModeFinished(android.view.ActionMode)(https://developer.android.com/reference/android/view/ActionMode mode) `

Called when an action mode has been finished. Note that if you override this method you should always call through to the superclass implementation by calling super.onActionModeFinished(mode).
` void` ` https://developer.android.com/reference/android/app/Dialog#onActionModeStarted(android.view.ActionMode)(https://developer.android.com/reference/android/view/ActionMode mode) `

Called when an action mode has been started. Note that if you override this method you should always call through to the superclass implementation by calling super.onActionModeStarted(mode).
` void` ` https://developer.android.com/reference/android/app/Dialog#onAttachedToWindow()() `

Called when the window has been attached to the window manager.
` void` ` https://developer.android.com/reference/android/app/Dialog#onBackPressed()() `

*This method was deprecated in API level 33. Use `https://developer.android.com/reference/android/window/OnBackInvokedCallback` or `androidx.activity.OnBackPressedCallback` to handle back navigation instead.*

*Starting from Android 13 (API level 33), back event handling is moving to an ahead-of-time model and `https://developer.android.com/reference/android/app/Dialog#onBackPressed()` and `https://developer.android.com/reference/android/view/KeyEvent#KEYCODE_BACK` should not be used to handle back events (back gesture or back button click). Instead, an `https://developer.android.com/reference/android/window/OnBackInvokedCallback` should be registered using `https://developer.android.com/reference/android/app/Dialog#getOnBackInvokedDispatcher()` `https://developer.android.com/reference/android/window/OnBackInvokedDispatcher#registerOnBackInvokedCallback(int,%20android.window.OnBackInvokedCallback)`.*
` void` ` https://developer.android.com/reference/android/app/Dialog#onContentChanged()() `

This hook is called whenever the content view of the screen changes (due to a call to `https://developer.android.com/reference/android/view/Window#setContentView(android.view.View,%20android.view.ViewGroup.LayoutParams)` or `https://developer.android.com/reference/android/view/Window#addContentView(android.view.View,%20android.view.ViewGroup.LayoutParams)`).
` boolean` ` https://developer.android.com/reference/android/app/Dialog#onContextItemSelected(android.view.MenuItem)(https://developer.android.com/reference/android/view/MenuItem item) ` ` void` ` https://developer.android.com/reference/android/app/Dialog#onContextMenuClosed(android.view.Menu)(https://developer.android.com/reference/android/view/Menu menu) ` ` void` ` https://developer.android.com/reference/android/app/Dialog#onCreate(android.os.Bundle)(https://developer.android.com/reference/android/os/Bundle savedInstanceState) `

Similar to `https://developer.android.com/reference/android/app/Activity#onCreate(android.os.Bundle)`, you should initialize your dialog in this method, including calling `https://developer.android.com/reference/android/app/Dialog#setContentView(android.view.View)`.
` void` ` https://developer.android.com/reference/android/app/Dialog#onCreateContextMenu(android.view.ContextMenu,%20android.view.View,%20android.view.ContextMenu.ContextMenuInfo)(https://developer.android.com/reference/android/view/ContextMenu menu, https://developer.android.com/reference/android/view/View v, https://developer.android.com/reference/android/view/ContextMenu.ContextMenuInfo menuInfo) `

Called when the context menu for this view is being built.
` boolean` ` https://developer.android.com/reference/android/app/Dialog#onCreateOptionsMenu(android.view.Menu)(https://developer.android.com/reference/android/view/Menu menu) `

It is usually safe to proxy this call to the owner activity's `https://developer.android.com/reference/android/app/Activity#onCreateOptionsMenu(android.view.Menu)` if the client desires the same menu for this Dialog.
` boolean` ` https://developer.android.com/reference/android/app/Dialog#onCreatePanelMenu(int,%20android.view.Menu)(int featureId, https://developer.android.com/reference/android/view/Menu menu) `

Initialize the contents of the menu for panel 'featureId'.
` https://developer.android.com/reference/android/view/View` ` https://developer.android.com/reference/android/app/Dialog#onCreatePanelView(int)(int featureId) `

Instantiate the view to display in the panel for 'featureId'.
` void` ` https://developer.android.com/reference/android/app/Dialog#onDetachedFromWindow()() `

Called when the window has been detached from the window manager.
` boolean` ` https://developer.android.com/reference/android/app/Dialog#onGenericMotionEvent(android.view.MotionEvent)(https://developer.android.com/reference/android/view/MotionEvent event) `

Called when a generic motion event was not handled by any of the views inside of the dialog.
` boolean` ` https://developer.android.com/reference/android/app/Dialog#onKeyDown(int,%20android.view.KeyEvent)(int keyCode, https://developer.android.com/reference/android/view/KeyEvent event) `

A key was pressed down.
` boolean` ` https://developer.android.com/reference/android/app/Dialog#onKeyLongPress(int,%20android.view.KeyEvent)(int keyCode, https://developer.android.com/reference/android/view/KeyEvent event) `

Default implementation of `https://developer.android.com/reference/android/view/KeyEvent.Callback#onKeyLongPress(int,%20android.view.KeyEvent)`: always returns false (doesn't handle the event).
` boolean` ` https://developer.android.com/reference/android/app/Dialog#onKeyMultiple(int,%20int,%20android.view.KeyEvent)(int keyCode, int repeatCount, https://developer.android.com/reference/android/view/KeyEvent event) `

Default implementation of `https://developer.android.com/reference/android/view/KeyEvent.Callback#onKeyMultiple(int,%20int,%20android.view.KeyEvent)`: always returns false (doesn't handle the event).
` boolean` ` https://developer.android.com/reference/android/app/Dialog#onKeyShortcut(int,%20android.view.KeyEvent)(int keyCode, https://developer.android.com/reference/android/view/KeyEvent event) `

Called when a key shortcut event is not handled by any of the views in the Dialog.
` boolean` ` https://developer.android.com/reference/android/app/Dialog#onKeyUp(int,%20android.view.KeyEvent)(int keyCode, https://developer.android.com/reference/android/view/KeyEvent event) `

A key was released.
` boolean` ` https://developer.android.com/reference/android/app/Dialog#onMenuItemSelected(int,%20android.view.MenuItem)(int featureId, https://developer.android.com/reference/android/view/MenuItem item) `

Called when a panel's menu item has been selected by the user.
` boolean` ` https://developer.android.com/reference/android/app/Dialog#onMenuOpened(int,%20android.view.Menu)(int featureId, https://developer.android.com/reference/android/view/Menu menu) `

Called when a panel's menu is opened by the user.
` boolean` ` https://developer.android.com/reference/android/app/Dialog#onOptionsItemSelected(android.view.MenuItem)(https://developer.android.com/reference/android/view/MenuItem item) ` ` void` ` https://developer.android.com/reference/android/app/Dialog#onOptionsMenuClosed(android.view.Menu)(https://developer.android.com/reference/android/view/Menu menu) ` ` void` ` https://developer.android.com/reference/android/app/Dialog#onPanelClosed(int,%20android.view.Menu)(int featureId, https://developer.android.com/reference/android/view/Menu menu) `

Called when a panel is being closed.
` boolean` ` https://developer.android.com/reference/android/app/Dialog#onPrepareOptionsMenu(android.view.Menu)(https://developer.android.com/reference/android/view/Menu menu) `

It is usually safe to proxy this call to the owner activity's `https://developer.android.com/reference/android/app/Activity#onPrepareOptionsMenu(android.view.Menu)` if the client desires the same menu for this Dialog.
` boolean` ` https://developer.android.com/reference/android/app/Dialog#onPreparePanel(int,%20android.view.View,%20android.view.Menu)(int featureId, https://developer.android.com/reference/android/view/View view, https://developer.android.com/reference/android/view/Menu menu) `

Prepare a panel to be displayed.
` void` ` https://developer.android.com/reference/android/app/Dialog#onRestoreInstanceState(android.os.Bundle)(https://developer.android.com/reference/android/os/Bundle savedInstanceState) `

Restore the state of the dialog from a previously saved bundle.
` https://developer.android.com/reference/android/os/Bundle` ` https://developer.android.com/reference/android/app/Dialog#onSaveInstanceState()() `

Saves the state of the dialog into a bundle.
` boolean` ` https://developer.android.com/reference/android/app/Dialog#onSearchRequested(android.view.SearchEvent)(https://developer.android.com/reference/android/view/SearchEvent searchEvent) `

This hook is called when the user signals the desire to start a search.
` boolean` ` https://developer.android.com/reference/android/app/Dialog#onSearchRequested()() `

This hook is called when the user signals the desire to start a search.
` void` ` https://developer.android.com/reference/android/app/Dialog#onStart()() `

Called when the dialog is starting.
` void` ` https://developer.android.com/reference/android/app/Dialog#onStop()() `

Called to tell you that you're stopping.
` boolean` ` https://developer.android.com/reference/android/app/Dialog#onTouchEvent(android.view.MotionEvent)(https://developer.android.com/reference/android/view/MotionEvent event) `

Called when a touch screen event was not handled by any of the views under it.
` boolean` ` https://developer.android.com/reference/android/app/Dialog#onTrackballEvent(android.view.MotionEvent)(https://developer.android.com/reference/android/view/MotionEvent event) `

Called when the trackball was moved and not handled by any of the views inside of the activity.
` void` ` https://developer.android.com/reference/android/app/Dialog#onWindowAttributesChanged(android.view.WindowManager.LayoutParams)(https://developer.android.com/reference/android/view/WindowManager.LayoutParams params) `

This is called whenever the current window attributes change.
` void` ` https://developer.android.com/reference/android/app/Dialog#onWindowFocusChanged(boolean)(boolean hasFocus) `

This hook is called whenever the window focus changes.
` https://developer.android.com/reference/android/view/ActionMode` ` https://developer.android.com/reference/android/app/Dialog#onWindowStartingActionMode(android.view.ActionMode.Callback)(https://developer.android.com/reference/android/view/ActionMode.Callback callback) `

Called when an action mode is being started for this window.
` https://developer.android.com/reference/android/view/ActionMode` ` https://developer.android.com/reference/android/app/Dialog#onWindowStartingActionMode(android.view.ActionMode.Callback,%20int)(https://developer.android.com/reference/android/view/ActionMode.Callback callback, int type) `

Called when an action mode is being started for this window.
` void` ` https://developer.android.com/reference/android/app/Dialog#openContextMenu(android.view.View)(https://developer.android.com/reference/android/view/View view) ` ` void` ` https://developer.android.com/reference/android/app/Dialog#openOptionsMenu()() ` ` void` ` https://developer.android.com/reference/android/app/Dialog#registerForContextMenu(android.view.View)(https://developer.android.com/reference/android/view/View view) ` ` final boolean` ` https://developer.android.com/reference/android/app/Dialog#requestWindowFeature(int)(int featureId) `

Enable extended window features.
` final <T extends https://developer.android.com/reference/android/view/View> T` ` https://developer.android.com/reference/android/app/Dialog#requireViewById(int)(int id) `

Finds the first descendant view with the given ID or throws an IllegalArgumentException if the ID is invalid (\< 0), there is no matching view in the hierarchy, or the dialog has not yet been fully created (for example, via `https://developer.android.com/reference/android/app/Dialog#show()` or `https://developer.android.com/reference/android/app/Dialog#create()`).
` void` ` https://developer.android.com/reference/android/app/Dialog#setCancelMessage(android.os.Message)(https://developer.android.com/reference/android/os/Message msg) `

Set a message to be sent when the dialog is canceled.
` void` ` https://developer.android.com/reference/android/app/Dialog#setCancelable(boolean)(boolean flag) `

Sets whether this dialog is cancelable with the `https://developer.android.com/reference/android/view/KeyEvent#KEYCODE_BACK` key.
` void` ` https://developer.android.com/reference/android/app/Dialog#setCanceledOnTouchOutside(boolean)(boolean cancel) `

Sets whether this dialog is canceled when touched outside the window's bounds.
` void` ` https://developer.android.com/reference/android/app/Dialog#setContentView(int)(int layoutResID) `

Set the screen content from a layout resource.
` void` ` https://developer.android.com/reference/android/app/Dialog#setContentView(android.view.View,%20android.view.ViewGroup.LayoutParams)(https://developer.android.com/reference/android/view/View view, https://developer.android.com/reference/android/view/ViewGroup.LayoutParams params) `

Set the screen content to an explicit view.
` void` ` https://developer.android.com/reference/android/app/Dialog#setContentView(android.view.View)(https://developer.android.com/reference/android/view/View view) `

Set the screen content to an explicit view.
` void` ` https://developer.android.com/reference/android/app/Dialog#setDismissMessage(android.os.Message)(https://developer.android.com/reference/android/os/Message msg) `

Set a message to be sent when the dialog is dismissed.
` final void` ` https://developer.android.com/reference/android/app/Dialog#setFeatureDrawable(int,%20android.graphics.drawable.Drawable)(int featureId, https://developer.android.com/reference/android/graphics/drawable/Drawable drawable) `

Convenience for calling `https://developer.android.com/reference/android/view/Window#setFeatureDrawable(int,%20android.graphics.drawable.Drawable)`.
` final void` ` https://developer.android.com/reference/android/app/Dialog#setFeatureDrawableAlpha(int,%20int)(int featureId, int alpha) `

Convenience for calling `https://developer.android.com/reference/android/view/Window#setFeatureDrawableAlpha(int,%20int)`.
` final void` ` https://developer.android.com/reference/android/app/Dialog#setFeatureDrawableResource(int,%20int)(int featureId, int resId) `

Convenience for calling `https://developer.android.com/reference/android/view/Window#setFeatureDrawableResource(int,%20int)`.
` final void` ` https://developer.android.com/reference/android/app/Dialog#setFeatureDrawableUri(int,%20android.net.Uri)(int featureId, https://developer.android.com/reference/android/net/Uri uri) `

Convenience for calling `https://developer.android.com/reference/android/view/Window#setFeatureDrawableUri(int,%20android.net.Uri)`.
` void` ` https://developer.android.com/reference/android/app/Dialog#setOnCancelListener(android.content.DialogInterface.OnCancelListener)(https://developer.android.com/reference/android/content/DialogInterface.OnCancelListener listener) `

Set a listener to be invoked when the dialog is canceled.
` void` ` https://developer.android.com/reference/android/app/Dialog#setOnDismissListener(android.content.DialogInterface.OnDismissListener)(https://developer.android.com/reference/android/content/DialogInterface.OnDismissListener listener) `

Set a listener to be invoked when the dialog is dismissed.
` void` ` https://developer.android.com/reference/android/app/Dialog#setOnKeyListener(android.content.DialogInterface.OnKeyListener)(https://developer.android.com/reference/android/content/DialogInterface.OnKeyListener onKeyListener) `

Sets the callback that will be called if a key is dispatched to the dialog.
` void` ` https://developer.android.com/reference/android/app/Dialog#setOnShowListener(android.content.DialogInterface.OnShowListener)(https://developer.android.com/reference/android/content/DialogInterface.OnShowListener listener) `

Sets a listener to be invoked when the dialog is shown.
` final void` ` https://developer.android.com/reference/android/app/Dialog#setOwnerActivity(android.app.Activity)(https://developer.android.com/reference/android/app/Activity activity) `

Sets the Activity that owns this dialog.
` void` ` https://developer.android.com/reference/android/app/Dialog#setTitle(java.lang.CharSequence)(https://developer.android.com/reference/java/lang/CharSequence title) `

Set the title text for this dialog's window.
` void` ` https://developer.android.com/reference/android/app/Dialog#setTitle(int)(int titleId) `

Set the title text for this dialog's window.
` final void` ` https://developer.android.com/reference/android/app/Dialog#setVolumeControlStream(int)(int streamType) `

By default, this will use the owner Activity's suggested stream type.
` void` ` https://developer.android.com/reference/android/app/Dialog#show()() `

Start the dialog and display it on screen.
` void` ` https://developer.android.com/reference/android/app/Dialog#takeKeyEvents(boolean)(boolean get) `

Request that key events come to this dialog.
` void` ` https://developer.android.com/reference/android/app/Dialog#unregisterForContextMenu(android.view.View)(https://developer.android.com/reference/android/view/View view) ` From class ` https://developer.android.com/reference/java/lang/Object ` ` https://developer.android.com/reference/java/lang/Object` ` https://developer.android.com/reference/java/lang/Object#clone()() `

Creates and returns a copy of this object.
` boolean` ` https://developer.android.com/reference/java/lang/Object#equals(java.lang.Object)(https://developer.android.com/reference/java/lang/Object obj) `

Indicates whether some other object is "equal to" this one.
` void` ` https://developer.android.com/reference/java/lang/Object#finalize()() `

Called by the garbage collector on an object when garbage collection determines that there are no more references to the object.
` final https://developer.android.com/reference/java/lang/Class<?>` ` https://developer.android.com/reference/java/lang/Object#getClass()() `

Returns the runtime class of this `Object`.
` int` ` https://developer.android.com/reference/java/lang/Object#hashCode()() `

Returns a hash code value for the object.
` final void` ` https://developer.android.com/reference/java/lang/Object#notify()() `

Wakes up a single thread that is waiting on this object's monitor.
` final void` ` https://developer.android.com/reference/java/lang/Object#notifyAll()() `

Wakes up all threads that are waiting on this object's monitor.
` https://developer.android.com/reference/java/lang/String` ` https://developer.android.com/reference/java/lang/Object#toString()() `

Returns a string representation of the object.
` final void` ` https://developer.android.com/reference/java/lang/Object#wait(long,%20int)(long timeoutMillis, int nanos) `

Causes the current thread to wait until it is awakened, typically by being *notified* or *interrupted*, or until a certain amount of real time has elapsed.
` final void` ` https://developer.android.com/reference/java/lang/Object#wait(long)(long timeoutMillis) `

Causes the current thread to wait until it is awakened, typically by being *notified* or *interrupted*, or until a certain amount of real time has elapsed.
` final void` ` https://developer.android.com/reference/java/lang/Object#wait()() `

Causes the current thread to wait until it is awakened, typically by being *notified* or *interrupted*.
From interface ` https://developer.android.com/reference/android/content/DialogInterface ` ` abstract void` ` https://developer.android.com/reference/android/content/DialogInterface#cancel()() `

Cancels the dialog, invoking the `https://developer.android.com/reference/android/content/DialogInterface.OnCancelListener`.
` abstract void` ` https://developer.android.com/reference/android/content/DialogInterface#dismiss()() `

Dismisses the dialog, invoking the `https://developer.android.com/reference/android/content/DialogInterface.OnDismissListener`.
From interface ` https://developer.android.com/reference/android/view/KeyEvent.Callback ` ` abstract boolean` ` https://developer.android.com/reference/android/view/KeyEvent.Callback#onKeyDown(int,%20android.view.KeyEvent)(int keyCode, https://developer.android.com/reference/android/view/KeyEvent event) `

Called when a key down event has occurred.
` abstract boolean` ` https://developer.android.com/reference/android/view/KeyEvent.Callback#onKeyLongPress(int,%20android.view.KeyEvent)(int keyCode, https://developer.android.com/reference/android/view/KeyEvent event) `

Called when a long press has occurred.
` abstract boolean` ` https://developer.android.com/reference/android/view/KeyEvent.Callback#onKeyMultiple(int,%20int,%20android.view.KeyEvent)(int keyCode, int count, https://developer.android.com/reference/android/view/KeyEvent event) `

Called when a user's interaction with an analog control, such as flinging a trackball, generates simulated down/up events for the same key multiple times in quick succession.
` abstract boolean` ` https://developer.android.com/reference/android/view/KeyEvent.Callback#onKeyUp(int,%20android.view.KeyEvent)(int keyCode, https://developer.android.com/reference/android/view/KeyEvent event) `

Called when a key up event has occurred.
From interface ` https://developer.android.com/reference/android/view/View.OnCreateContextMenuListener ` ` abstract void` ` https://developer.android.com/reference/android/view/View.OnCreateContextMenuListener#onCreateContextMenu(android.view.ContextMenu,%20android.view.View,%20android.view.ContextMenu.ContextMenuInfo)(https://developer.android.com/reference/android/view/ContextMenu menu, https://developer.android.com/reference/android/view/View v, https://developer.android.com/reference/android/view/ContextMenu.ContextMenuInfo menuInfo) `

Called when the context menu for this view is being built.
From interface ` https://developer.android.com/reference/android/view/Window.Callback ` ` abstract boolean` ` https://developer.android.com/reference/android/view/Window.Callback#dispatchGenericMotionEvent(android.view.MotionEvent)(https://developer.android.com/reference/android/view/MotionEvent event) `

Called to process generic motion events.
` abstract boolean` ` https://developer.android.com/reference/android/view/Window.Callback#dispatchKeyEvent(android.view.KeyEvent)(https://developer.android.com/reference/android/view/KeyEvent event) `

Called to process key events.
` abstract boolean` ` https://developer.android.com/reference/android/view/Window.Callback#dispatchKeyShortcutEvent(android.view.KeyEvent)(https://developer.android.com/reference/android/view/KeyEvent event) `

Called to process a key shortcut event.
` abstract boolean` ` https://developer.android.com/reference/android/view/Window.Callback#dispatchPopulateAccessibilityEvent(android.view.accessibility.AccessibilityEvent)(https://developer.android.com/reference/android/view/accessibility/AccessibilityEvent event) `

Called to process population of `https://developer.android.com/reference/android/view/accessibility/AccessibilityEvent`s.
` abstract boolean` ` https://developer.android.com/reference/android/view/Window.Callback#dispatchTouchEvent(android.view.MotionEvent)(https://developer.android.com/reference/android/view/MotionEvent event) `

Called to process touch screen events.
` abstract boolean` ` https://developer.android.com/reference/android/view/Window.Callback#dispatchTrackballEvent(android.view.MotionEvent)(https://developer.android.com/reference/android/view/MotionEvent event) `

Called to process trackball events.
` abstract void` ` https://developer.android.com/reference/android/view/Window.Callback#onActionModeFinished(android.view.ActionMode)(https://developer.android.com/reference/android/view/ActionMode mode) `

Called when an action mode has been finished.
` abstract void` ` https://developer.android.com/reference/android/view/Window.Callback#onActionModeStarted(android.view.ActionMode)(https://developer.android.com/reference/android/view/ActionMode mode) `

Called when an action mode has been started.
` abstract void` ` https://developer.android.com/reference/android/view/Window.Callback#onAttachedToWindow()() `

Called when the window has been attached to the window manager.
` abstract void` ` https://developer.android.com/reference/android/view/Window.Callback#onContentChanged()() `

This hook is called whenever the content view of the screen changes (due to a call to `https://developer.android.com/reference/android/view/Window#setContentView(android.view.View,%20android.view.ViewGroup.LayoutParams)` or `https://developer.android.com/reference/android/view/Window#addContentView(android.view.View,%20android.view.ViewGroup.LayoutParams)`).
` abstract boolean` ` https://developer.android.com/reference/android/view/Window.Callback#onCreatePanelMenu(int,%20android.view.Menu)(int featureId, https://developer.android.com/reference/android/view/Menu menu) `

Initialize the contents of the menu for panel 'featureId'.
` abstract https://developer.android.com/reference/android/view/View` ` https://developer.android.com/reference/android/view/Window.Callback#onCreatePanelView(int)(int featureId) `

Instantiate the view to display in the panel for 'featureId'.
` abstract void` ` https://developer.android.com/reference/android/view/Window.Callback#onDetachedFromWindow()() `

Called when the window has been detached from the window manager.
` abstract boolean` ` https://developer.android.com/reference/android/view/Window.Callback#onMenuItemSelected(int,%20android.view.MenuItem)(int featureId, https://developer.android.com/reference/android/view/MenuItem item) `

Called when a panel's menu item has been selected by the user.
` abstract boolean` ` https://developer.android.com/reference/android/view/Window.Callback#onMenuOpened(int,%20android.view.Menu)(int featureId, https://developer.android.com/reference/android/view/Menu menu) `

Called when a panel's menu is opened by the user.
` abstract void` ` https://developer.android.com/reference/android/view/Window.Callback#onPanelClosed(int,%20android.view.Menu)(int featureId, https://developer.android.com/reference/android/view/Menu menu) `

Called when a panel is being closed.
` default void` ` https://developer.android.com/reference/android/view/Window.Callback#onPointerCaptureChanged(boolean)(boolean hasCapture) `

Called when pointer capture is enabled or disabled for the current window.
` abstract boolean` ` https://developer.android.com/reference/android/view/Window.Callback#onPreparePanel(int,%20android.view.View,%20android.view.Menu)(int featureId, https://developer.android.com/reference/android/view/View view, https://developer.android.com/reference/android/view/Menu menu) `

Prepare a panel to be displayed.
` default void` ` https://developer.android.com/reference/android/view/Window.Callback#onProvideKeyboardShortcuts(java.util.List<android.view.KeyboardShortcutGroup>,%20android.view.Menu,%20int)(https://developer.android.com/reference/java/util/List<https://developer.android.com/reference/android/view/KeyboardShortcutGroup> data, https://developer.android.com/reference/android/view/Menu menu, int deviceId) `

Called when Keyboard Shortcuts are requested for the current window.
` abstract boolean` ` https://developer.android.com/reference/android/view/Window.Callback#onSearchRequested()() `

Called when the user signals the desire to start a search.
` abstract boolean` ` https://developer.android.com/reference/android/view/Window.Callback#onSearchRequested(android.view.SearchEvent)(https://developer.android.com/reference/android/view/SearchEvent searchEvent) `

Called when the user signals the desire to start a search.
` abstract void` ` https://developer.android.com/reference/android/view/Window.Callback#onWindowAttributesChanged(android.view.WindowManager.LayoutParams)(https://developer.android.com/reference/android/view/WindowManager.LayoutParams attrs) `

This is called whenever the current window attributes change.
` abstract void` ` https://developer.android.com/reference/android/view/Window.Callback#onWindowFocusChanged(boolean)(boolean hasFocus) `

This hook is called whenever the window focus changes.
` abstract https://developer.android.com/reference/android/view/ActionMode` ` https://developer.android.com/reference/android/view/Window.Callback#onWindowStartingActionMode(android.view.ActionMode.Callback)(https://developer.android.com/reference/android/view/ActionMode.Callback callback) `

Called when an action mode is being started for this window.
` abstract https://developer.android.com/reference/android/view/ActionMode` ` https://developer.android.com/reference/android/view/Window.Callback#onWindowStartingActionMode(android.view.ActionMode.Callback,%20int)(https://developer.android.com/reference/android/view/ActionMode.Callback callback, int type) `

Called when an action mode is being started for this window.
From interface ` https://developer.android.com/reference/android/widget/AdapterView.OnItemClickListener ` ` abstract void` ` https://developer.android.com/reference/android/widget/AdapterView.OnItemClickListener#onItemClick(android.widget.AdapterView<?>,%20android.view.View,%20int,%20long)(https://developer.android.com/reference/android/widget/AdapterView<?> parent, https://developer.android.com/reference/android/view/View view, int position, long id) `

Callback method to be invoked when an item in this AdapterView has been clicked.
From interface ` https://developer.android.com/reference/android/view/View.OnClickListener ` ` abstract void` ` https://developer.android.com/reference/android/view/View.OnClickListener#onClick(android.view.View)(https://developer.android.com/reference/android/view/View v) `

Called when a view has been clicked.

## Public constructors

### CharacterPickerDialog

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

```
public CharacterPickerDialog (Context context, 
                View view, 
                Editable text, 
                String options, 
                boolean insert)
```

Creates a new CharacterPickerDialog that presents the specified `options` for insertion or replacement (depending on the sense of `insert`) into `text`.

<br />

| Parameters ||
|---|---|
| `context` | `Context` <br /> |
| `view` | `View` <br /> |
| `text` | `Editable` <br /> |
| `options` | `String` <br /> |
| `insert` | `boolean` <br /> |

## Public methods

### onClick

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

```
public void onClick (View v)
```

Handles clicks on the Cancel button.

<br />

| Parameters ||
|---|---|
| `v` | `View`: The view that was clicked. <br /> |

### onItemClick

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

```
public void onItemClick (AdapterView<T extends Adapter> parent, 
                View view, 
                int position, 
                long id)
```

Handles clicks on the character buttons.

<br />

| Parameters ||
|---|---|
| `parent` | `AdapterView` <br /> |
| `view` | `View` <br /> |
| `position` | `int` <br /> |
| `id` | `long` <br /> |

## Protected methods

### onCreate

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

```
protected void onCreate (Bundle savedInstanceState)
```

Similar to `https://developer.android.com/reference/android/app/Activity#onCreate(android.os.Bundle)`, you should initialize your dialog in this method, including calling `https://developer.android.com/reference/android/app/Dialog#setContentView(android.view.View)`.

<br />

| Parameters ||
|---|---|
| `savedInstanceState` | `Bundle`: If this dialog is being reinitialized after a the hosting activity was previously shut down, holds the result from the most recent call to `https://developer.android.com/reference/android/app/Dialog#onSaveInstanceState()`, or null if this is the first time. <br /> |