Most visited

Recently visited

Added in API level 1

MenuItem

public interface MenuItem

android.view.MenuItem


直接访问以前创建的菜单项的界面。

通过调用 add(int)方法之一返回项目。

有关特定菜单类型的功能集,请参阅 Menu

Developer Guides

有关创建菜单的信息,请阅读 Menus开发人员指南。

Summary

Nested classes

interface MenuItem.OnActionExpandListener

在标记为SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW的菜单项展开或折叠时调用回调的接口定义。

interface MenuItem.OnMenuItemClickListener

在单击菜单项时调用回调的接口定义。

Constants

int SHOW_AS_ACTION_ALWAYS

始终将此项目显示为操作栏中的按钮。

int SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW

此项目的动作视图会折叠为正常的菜单项目。

int SHOW_AS_ACTION_IF_ROOM

如果系统决定有空间,请在操作栏中将该项目显示为按钮。

int SHOW_AS_ACTION_NEVER

切勿将此项目显示为操作栏中的按钮。

int SHOW_AS_ACTION_WITH_TEXT

当此项目位于操作栏中时,即使它还有指定的图标,也始终显示文本标签。

Public methods

abstract boolean collapseActionView()

折叠与此菜单项关联的操作视图。

abstract boolean expandActionView()

展开与此菜单项关联的操作视图。

abstract ActionProvider getActionProvider()

获取 ActionProvider

abstract View getActionView()

返回此菜单项的当前设置的操作视图。

abstract char getAlphabeticShortcut()

返回此菜单项的字母快捷方式的字符。

abstract int getGroupId()

返回此菜单项所属的组标识符。

abstract Drawable getIcon()

以Drawable形式返回此项目的图标(如果之前未加载,则从资源中获取该图标)。

abstract Intent getIntent()

返回与此项目关联的意图。

abstract int getItemId()

返回此菜单项的标识符。

abstract ContextMenu.ContextMenuInfo getMenuInfo()

获取链接到此菜单项的额外信息。

abstract char getNumericShortcut()

返回此菜单项的数字(12键)快捷键的字符。

abstract int getOrder()

返回此项目类别内的类别和顺序。

abstract SubMenu getSubMenu()

当选择这个项目时,获取子菜单,如果它有一个。

abstract CharSequence getTitle()

检索项目的当前标题。

abstract CharSequence getTitleCondensed()

检索项目的当前缩略标题。

abstract boolean hasSubMenu()

检查此项目是否有关联的子菜单。

abstract boolean isActionViewExpanded()

如果此菜单项的操作视图已展开,则返回true。

abstract boolean isCheckable()

返回该项目是否可以显示复选标记。

abstract boolean isChecked()

返回项目当前是否显示复选标记。

abstract boolean isEnabled()

返回菜单项的启用状态。

abstract boolean isVisible()

返回菜单项的可见性。

abstract MenuItem setActionProvider(ActionProvider actionProvider)

如果项目放置在操作栏上,则设置负责创建操作视图的 ActionProvider

abstract MenuItem setActionView(int resId)

为此菜单项设置一个操作视图。

abstract MenuItem setActionView(View view)

为此菜单项设置一个操作视图。

abstract MenuItem setAlphabeticShortcut(char alphaChar)

更改与此项目关联的字母快捷键。

abstract MenuItem setCheckable(boolean checkable)

控制此项目是否可以显示复选标记。

abstract MenuItem setChecked(boolean checked)

控制此项目是否带有复选标记。

abstract MenuItem setEnabled(boolean enabled)

设置菜单项是否启用。

abstract MenuItem setIcon(Drawable icon)

更改与此项目相关的图标。

abstract MenuItem setIcon(int iconRes)

更改与此项目相关的图标。

abstract MenuItem setIntent(Intent intent)

更改与此项目关联的意图。

abstract MenuItem setNumericShortcut(char numericChar)

更改与此项目关联的数字快捷键。

abstract MenuItem setOnActionExpandListener(MenuItem.OnActionExpandListener listener)

MenuItem.OnActionExpandListener上设置 MenuItem.OnActionExpandListener ,以便在关联的操作视图展开或折叠时得到通知。

abstract MenuItem setOnMenuItemClickListener(MenuItem.OnMenuItemClickListener menuItemClickListener)

设置用于调用此菜单项的自定义侦听器。

abstract MenuItem setShortcut(char numericChar, char alphaChar)

更改与此项目相关的数字和字母快捷键。

abstract void setShowAsAction(int actionEnum)

设置在出现操作栏时该项目应如何显示。

abstract MenuItem setShowAsActionFlags(int actionEnum)

设置在出现操作栏时该项目应如何显示。

abstract MenuItem setTitle(CharSequence title)

更改与此项目相关的标题。

abstract MenuItem setTitle(int title)

更改与此项目相关的标题。

abstract MenuItem setTitleCondensed(CharSequence title)

更改与此项目关联的精简标题。

abstract MenuItem setVisible(boolean visible)

设置菜单项的可见性。

Constants

SHOW_AS_ACTION_ALWAYS

Added in API level 11
int SHOW_AS_ACTION_ALWAYS

始终将此项目显示为操作栏中的按钮。 谨慎使用! 如果太多的项目被设置为始终显示在操作栏中,则它可以挤占操作栏并降低具有较小屏幕的设备上的用户体验。 一个好的经验法则是不要超过2个项目设置为始终显示。

常量值:2(0x00000002)

SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW

Added in API level 14
int SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW

此项目的动作视图会折叠为正常的菜单项目。 展开后,动作视图暂时占据其容器的较大部分。

常量值:8(0x00000008)

SHOW_AS_ACTION_IF_ROOM

Added in API level 11
int SHOW_AS_ACTION_IF_ROOM

如果系统决定有空间,请在操作栏中将该项目显示为按钮。

常数值:1(0x00000001)

SHOW_AS_ACTION_NEVER

Added in API level 11
int SHOW_AS_ACTION_NEVER

切勿将此项目显示为操作栏中的按钮。

常量值:0(0x00000000)

SHOW_AS_ACTION_WITH_TEXT

Added in API level 11
int SHOW_AS_ACTION_WITH_TEXT

当此项目位于操作栏中时,即使它还有指定的图标,也始终显示文本标签。

常量值:4(0x00000004)

Public methods

collapseActionView

Added in API level 14
boolean collapseActionView ()

折叠与此菜单项关联的操作视图。 菜单项必须有一个操作视图集,以及showAsAction标志SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW 如果已经使用setOnActionExpandListener(OnActionExpandListener)设置了侦听setOnActionExpandListener(OnActionExpandListener) ,则将调用其onMenuItemActionCollapse(MenuItem)方法。 监听器可能会从此方法返回false以防止折叠操作视图。

Returns
boolean true if the action view was collapsed, false otherwise.

expandActionView

Added in API level 14
boolean expandActionView ()

展开与此菜单项关联的操作视图。 该菜单项必须有一个操作视图集,以及showAsAction标志SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW 如果已经使用setOnActionExpandListener(OnActionExpandListener)设置了侦听setOnActionExpandListener(OnActionExpandListener) ,则将调用其onMenuItemActionExpand(MenuItem)方法。 监听器可能会从此方法返回false以防止扩大操作视图。

Returns
boolean true if the action view was expanded, false otherwise.

getActionProvider

Added in API level 14
ActionProvider getActionProvider ()

获取 ActionProvider

Returns
ActionProvider The action provider.

也可以看看:

getActionView

Added in API level 11
View getActionView ()

返回此菜单项的当前设置的操作视图。

Returns
View This item's action view

也可以看看:

getAlphabeticShortcut

Added in API level 1
char getAlphabeticShortcut ()

返回此菜单项的字母快捷方式的字符。

Returns
char Alphabetic character to use as a shortcut.

getGroupId

Added in API level 1
int getGroupId ()

返回此菜单项所属的组标识符。 菜单创建后,组标识符不能更改。

Returns
int The menu item's group identifier.

getIcon

Added in API level 1
Drawable getIcon ()

以Drawable形式返回此项目的图标(如果之前未加载,则从资源中获取该图标)。

Returns
Drawable The icon as a Drawable.

getIntent

Added in API level 1
Intent getIntent ()

返回与此项目关联的意图。 这会返回对Intent的引用,您可以根据需要更改它以修改Item所持有的内容。

Returns
Intent Returns the last value supplied to setIntent(Intent), or null.

也可以看看:

getItemId

Added in API level 1
int getItemId ()

返回此菜单项的标识符。 创建菜单后,标识符不能更改。

Returns
int The menu item's identifier.

getMenuInfo

Added in API level 1
ContextMenu.ContextMenuInfo getMenuInfo ()

获取链接到此菜单项的额外信息。 这个额外的信息是由将菜单项添加到菜单的视图设置的。

Returns
ContextMenu.ContextMenuInfo The extra information linked to the View that added this menu item to the menu. This can be null.

也可以看看:

getNumericShortcut

Added in API level 1
char getNumericShortcut ()

返回此菜单项的数字(12键)快捷键的字符。

Returns
char Numeric character to use as a shortcut.

getOrder

Added in API level 1
int getOrder ()

返回此项目类别内的类别和顺序。 该项目将在订单大于此值的所有项目(在其类别中)之前显示。

订单整数包含项目的类别(整数的高位;通过或/添加具有类别内的顺序的类别)以及该类别内的项目的顺序(较低位)。 示例类别是CATEGORY_SYSTEMCATEGORY_SECONDARYCATEGORY_ALTERNATIVECATEGORY_CONTAINER 完整列表见Menu

Returns
int The order of this item.

getSubMenu

Added in API level 1
SubMenu getSubMenu ()

当选择这个项目时,获取子菜单,如果它有一个。 hasSubMenu()

Returns
SubMenu The associated menu if there is one, else null

getTitle

Added in API level 1
CharSequence getTitle ()

检索项目的当前标题。

Returns
CharSequence The title.

getTitleCondensed

Added in API level 1
CharSequence getTitleCondensed ()

检索项目的当前缩略标题。 如果浓缩标题从未设置,它将返回正常标题。

Returns
CharSequence The condensed title, if it exists. Otherwise the normal title.

hasSubMenu

Added in API level 1
boolean hasSubMenu ()

检查此项目是否有关联的子菜单。 即它是另一个菜单的子菜单。

Returns
boolean If true this item has a menu; else it is a normal item.

isActionViewExpanded

Added in API level 14
boolean isActionViewExpanded ()

如果此菜单项的操作视图已展开,则返回true。

Returns
boolean true if the item's action view is expanded, false otherwise.

也可以看看:

isCheckable

Added in API level 1
boolean isCheckable ()

返回该项目是否可以显示复选标记。

Returns
boolean If a check mark can be displayed, returns true.

也可以看看:

isChecked

Added in API level 1
boolean isChecked ()

返回项目当前是否显示复选标记。

Returns
boolean If a check mark is displayed, returns true.

也可以看看:

isEnabled

Added in API level 1
boolean isEnabled ()

返回菜单项的启用状态。

Returns
boolean If true the item is enabled and hence invokable; else it is not.

isVisible

Added in API level 1
boolean isVisible ()

返回菜单项的可见性。

Returns
boolean If true the item is visible; else it is hidden.

setActionProvider

Added in API level 14
MenuItem setActionProvider (ActionProvider actionProvider)

如果项目放置在操作栏上,则设置负责创建操作视图的ActionProvider 如果项目放置在溢出菜单中,提供程序还会提供默认操作。

注意:设置操作提供程序将覆盖通过 setActionView(int)setActionView(View)设置的操作视图。

Parameters
actionProvider ActionProvider: The action provider.
Returns
MenuItem This Item so additional setters can be called.

也可以看看:

setActionView

Added in API level 11
MenuItem setActionView (int resId)

为此菜单项设置一个操作视图。 当此项目显示为父级内的操作时,将会显示一个操作视图来代替UI中自动生成的菜单项元素。

注意:设置操作视图将覆盖通过 setActionProvider(ActionProvider)设置的操作提供程序。

Parameters
resId int: Layout resource to use for presenting this item to the user.
Returns
MenuItem This Item so additional setters can be called.

也可以看看:

setActionView

Added in API level 11
MenuItem setActionView (View view)

为此菜单项设置一个操作视图。 当此项目显示为父级内的操作时,将会显示一个操作视图来代替UI中自动生成的菜单项元素。

注意:设置操作视图将覆盖通过 setActionProvider(ActionProvider)设置的操作提供者。

Parameters
view View: View to use for presenting this item to the user.
Returns
MenuItem This Item so additional setters can be called.

也可以看看:

setAlphabeticShortcut

Added in API level 1
MenuItem setAlphabeticShortcut (char alphaChar)

更改与此项目关联的字母快捷键。 当生成给定字符的键与ctrl键一起按下时,快捷键将被触发。 案例不重要,快捷字符将以小写显示。 请注意,带有字符'\ b'或'\ n'作为快捷键的菜单项将分别由Delete键或回车键触发。

有关支持快捷方式的菜单类型,请参见 Menu

Parameters
alphaChar char: The alphabetic shortcut key. This is the shortcut when using a keyboard with alphabetic keys.
Returns
MenuItem This Item so additional setters can be called.

setCheckable

Added in API level 1
MenuItem setCheckable (boolean checkable)

控制此项目是否可以显示复选标记。 设置它实际上并不显示复选标记(请参阅setChecked(boolean) ); 而是确保在显示复选标记的项目中有空间。

有关支持复选标记的菜单类型,请参见 Menu

Parameters
checkable boolean: Set to true to allow a check mark, false to disallow. The default is false.
Returns
MenuItem This Item so additional setters can be called.

也可以看看:

setChecked

Added in API level 1
MenuItem setChecked (boolean checked)

控制此项目是否带有复选标记。 请注意,您必须先启用setCheckable(boolean)检查,否则复选标记将不会出现。 如果此项目是包含互斥项目的组的成员(通过setGroupCheckable(int, boolean, boolean)设置,组中的其他项目将被取消选中。

有关支持复选标记的菜单类型,请参见 Menu

Parameters
checked boolean: Set to true to display a check mark, false to hide it. The default value is false.
Returns
MenuItem This Item so additional setters can be called.

也可以看看:

setEnabled

Added in API level 1
MenuItem setEnabled (boolean enabled)

设置菜单项是否启用。 禁用菜单项将不允许通过其快捷方式调用它。 菜单项仍然可见。

Parameters
enabled boolean: If true then the item will be invokable; if false it is won't be invokable.
Returns
MenuItem This Item so additional setters can be called.

setIcon

Added in API level 1
MenuItem setIcon (Drawable icon)

更改与此项目相关的图标。 这个图标并不总是显示,所以标题应该足以描述这个项目。 有关支持图标的菜单类型,请参见Menu

Parameters
icon Drawable: The new icon (as a Drawable) to be displayed.
Returns
MenuItem This Item so additional setters can be called.

setIcon

Added in API level 1
MenuItem setIcon (int iconRes)

更改与此项目相关的图标。 这个图标并不总是显示,所以标题应该足以描述这个项目。 有关支持图标的菜单类型,请参阅Menu

此方法将设置图标的资源ID,在显示此项目时将使用该图标延迟获取Drawable。

Parameters
iconRes int: The new icon (as a resource ID) to be displayed.
Returns
MenuItem This Item so additional setters can be called.

setIntent

Added in API level 1
MenuItem setIntent (Intent intent)

更改与此项目关联的意图。 默认情况下,没有与菜单项关联的Intent。 如果您设置了一个,并且没有其他处理该项目,那么默认行为是使用给定的Intent调用startActivity(Intent)

请注意,setIntent()不能用于带有Runnable的版本add(int) ,因为run()不会返回值,因此无法确定是否处理该项目。 在这种情况下,假定Runnable始终处理该项目,并且意图永远不会启动。

Parameters
intent Intent: The Intent to associated with the item. This Intent object is not copied, so be careful not to modify it later.
Returns
MenuItem This Item so additional setters can be called.

也可以看看:

setNumericShortcut

Added in API level 1
MenuItem setNumericShortcut (char numericChar)

更改与此项目关联的数字快捷键。

有关支持快捷方式的菜单类型,请参见 Menu

Parameters
numericChar char: The numeric shortcut key. This is the shortcut when using a 12-key (numeric) keyboard.
Returns
MenuItem This Item so additional setters can be called.

setOnActionExpandListener

Added in API level 14
MenuItem setOnActionExpandListener (MenuItem.OnActionExpandListener listener)

MenuItem.OnActionExpandListener上设置MenuItem.OnActionExpandListener ,以便在关联的操作视图展开或折叠时收到通知。 该菜单项必须配置为使用标志SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW展开或折叠其操作视图。

Parameters
listener MenuItem.OnActionExpandListener: Listener that will respond to expand/collapse events
Returns
MenuItem This menu item instance for call chaining

setOnMenuItemClickListener

Added in API level 1
MenuItem setOnMenuItemClickListener (MenuItem.OnMenuItemClickListener menuItemClickListener)

设置用于调用此菜单项的自定义侦听器。 在大多数情况下,使用onOptionsItemSelected(MenuItem)onContextItemSelected(MenuItem)效率更高,更容易。

Parameters
menuItemClickListener MenuItem.OnMenuItemClickListener: The object to receive invokations.
Returns
MenuItem This Item so additional setters can be called.

也可以看看:

setShortcut

Added in API level 1
MenuItem setShortcut (char numericChar, 
                char alphaChar)

更改与此项目相关的数字和字母快捷键。 请注意,当按住ctrl键的同时按下生成给定字符的按键时,将会触发快捷方式。 另请注意,该情况并不重要,字母快捷字符将以小写显示。

有关支持快捷方式的菜单类型,请参见 Menu

Parameters
numericChar char: The numeric shortcut key. This is the shortcut when using a numeric (e.g., 12-key) keyboard.
alphaChar char: The alphabetic shortcut key. This is the shortcut when using a keyboard with alphabetic keys.
Returns
MenuItem This Item so additional setters can be called.

setShowAsAction

Added in API level 11
void setShowAsAction (int actionEnum)

设置在出现操作栏时该项目应如何显示。 参数actionEnum是一个标志集。 一个SHOW_AS_ACTION_ALWAYSSHOW_AS_ACTION_IF_ROOM ,或SHOW_AS_ACTION_NEVER应该被使用,则可以选择:或价值SHOW_AS_ACTION_WITH_TEXT SHOW_AS_ACTION_WITH_TEXT请求在项目显示为动作时,应该显示文本标签。

Parameters
actionEnum int: How the item should display. One of SHOW_AS_ACTION_ALWAYS, SHOW_AS_ACTION_IF_ROOM, or SHOW_AS_ACTION_NEVER. SHOW_AS_ACTION_NEVER is the default.

也可以看看:

setShowAsActionFlags

Added in API level 14
MenuItem setShowAsActionFlags (int actionEnum)

设置在出现操作栏时该项目应如何显示。 参数actionEnum是一个标志集。 一个SHOW_AS_ACTION_ALWAYSSHOW_AS_ACTION_IF_ROOM ,或SHOW_AS_ACTION_NEVER应该被使用,则可以选择:或价值SHOW_AS_ACTION_WITH_TEXT SHOW_AS_ACTION_WITH_TEXT请求在项目显示为动作时,应该显示文本标签。

注意:此方法与 setShowAsAction(int)不同之处仅在于它返回当前用于调用链接的MenuItem实例。

Parameters
actionEnum int: How the item should display. One of SHOW_AS_ACTION_ALWAYS, SHOW_AS_ACTION_IF_ROOM, or SHOW_AS_ACTION_NEVER. SHOW_AS_ACTION_NEVER is the default.
Returns
MenuItem This MenuItem instance for call chaining.

也可以看看:

setTitle

Added in API level 1
MenuItem setTitle (CharSequence title)

更改与此项目相关的标题。

Parameters
title CharSequence: The new text to be displayed.
Returns
MenuItem This Item so additional setters can be called.

setTitle

Added in API level 1
MenuItem setTitle (int title)

更改与此项目相关的标题。

某些菜单类型没有足够的空间显示完整标题,而是优先使用精简标题。 有关更多信息,请参阅Menu

Parameters
title int: The resource id of the new text to be displayed.
Returns
MenuItem This Item so additional setters can be called.

也可以看看:

setTitleCondensed

Added in API level 1
MenuItem setTitleCondensed (CharSequence title)

更改与此项目关联的精简标题。 浓缩标题用于常规标题可能太长而无法显示的情况。

Parameters
title CharSequence: The new text to be displayed as the condensed title.
Returns
MenuItem This Item so additional setters can be called.

setVisible

Added in API level 1
MenuItem setVisible (boolean visible)

设置菜单项的可见性。 即使菜单项不可见,也可能通过其快捷方式调用它(要完全禁用某个项目,将其设置为不可见并且disabled )。

Parameters
visible boolean: If true then the item will be visible; if false it is hidden.
Returns
MenuItem This Item so additional setters can be called.

Hooray!