java.lang.Object | |
↳ | android.widget.PopupMenu |
A PopupMenu displays a Menu
in a modal popup window anchored to a View
.
The popup will appear below the anchor view if there is room, or above it if there is not.
If the IME is visible the popup will not overlap it until it is touched. Touching outside
of the popup will dismiss it.
Nested Classes | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
PopupMenu.OnDismissListener | Callback interface used to notify the application that the menu has closed. | ||||||||||
PopupMenu.OnMenuItemClickListener | Interface responsible for receiving menu item click events if the items themselves do not have individual item click listeners. |
Public Constructors | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Constructor to create a new popup menu with an anchor view.
| |||||||||||
Constructor to create a new popup menu with an anchor view and alignment
gravity.
| |||||||||||
Constructor a create a new popup menu with a specific style.
|
Public Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Dismiss the menu popup.
| |||||||||||
Returns an
View.OnTouchListener that can be added to the anchor view
to implement drag-to-open behavior.
| |||||||||||
Inflate a menu resource into this PopupMenu.
| |||||||||||
Set a listener that will be notified when this menu is dismissed.
| |||||||||||
Set a listener that will be notified when the user selects an item from the menu.
| |||||||||||
Show the menu popup anchored to the view specified during construction.
|
[Expand]
Inherited Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
From class
java.lang.Object
| |||||||||||
From interface com.android.internal.view.menu.MenuBuilder.Callback | |||||||||||
From interface com.android.internal.view.menu.MenuPresenter.Callback |
Constructor to create a new popup menu with an anchor view.
context | Context the popup menu is running in, through which it can access the current theme, resources, etc. |
---|---|
anchor | Anchor view for this popup. The popup will appear below the anchor if there is room, or above it if there is not. |
Constructor to create a new popup menu with an anchor view and alignment gravity.
context | Context the popup menu is running in, through which it can access the current theme, resources, etc. |
---|---|
anchor | Anchor view for this popup. The popup will appear below the anchor if there is room, or above it if there is not. |
gravity | The Gravity value for aligning the popup with its
anchor.
|
Constructor a create a new popup menu with a specific style.
context | Context the popup menu is running in, through which it can access the current theme, resources, etc. |
---|---|
anchor | Anchor view for this popup. The popup will appear below the anchor if there is room, or above it if there is not. |
gravity | The Gravity value for aligning the popup with its
anchor. |
popupStyleAttr | An attribute in the current theme that contains a reference to a style resource that supplies default values for the popup window. Can be 0 to not look for defaults. |
popupStyleRes | A resource identifier of a style resource that supplies default values for the popup window, used only if popupStyleAttr is 0 or can not be found in the theme. Can be 0 to not look for defaults. |
Returns an View.OnTouchListener
that can be added to the anchor view
to implement drag-to-open behavior.
When the listener is set on a view, touching that view and dragging outside of its bounds will open the popup window. Lifting will select the currently touched list item.
Example usage:
PopupMenu myPopup = new PopupMenu(context, myAnchor); myAnchor.setOnTouchListener(myPopup.getDragToOpenListener());
MenuInflater
that can be used to inflate menu items from XML into the
menu returned by getMenu()
.Inflate a menu resource into this PopupMenu. This is equivalent to calling popupMenu.getMenuInflater().inflate(menuRes, popupMenu.getMenu()).
menuRes | Menu resource to inflate |
---|
Set a listener that will be notified when this menu is dismissed.
listener | Listener to notify |
---|
Set a listener that will be notified when the user selects an item from the menu.
listener | Listener to notify |
---|
Show the menu popup anchored to the view specified during construction.