菜单显示瞬态材料表上的选项列表。
菜单在与按钮,动作或其他控件交互时出现。它们显示一个选项列表,每行一个选项。可以被滚动。
如果不适用于特定上下文,则可以禁用菜单项。上下文菜单根据应用程序的当前状态动态更改其可用菜单项。
用法
菜单是与按钮,动作,指针或其他控件交互时出现的临时材料。它包含至少两个菜单项。
每个菜单项都包含一个离散选项或操作,可以影响视图中的应用程序,视图或选定元素。
不应将菜单用作应用内导航的主要方法
菜单标签
按钮或控件的标签应简明准确地反映菜单中的项目。菜单栏通常使用单个单词作为标签,如“文件”,“格式”和“编辑”。其他上下文可能需要更长的标签。
禁用菜单选项
菜单显示一组一致的菜单项。可以基于应用程序的当前状态启用或禁用菜单项。
上下文菜单
上下文菜单根据应用程序的当前状态动态更改其可用菜单项。
- 可以删除与当前上下文无关的菜单项
- 可以禁用相关但需要满足某些条件的菜单项。例如,选择文本时,“复制”菜单选项将启用。
单个菜单项状态
某些应用状态可能会导致仅包含单个菜单项的上下文菜单。例如,当突出显示网页上的文本时,Android仅显示“复制”菜单项,因为用户无法剪切或粘贴文本。
菜单是可滚动的
如果菜单的高度阻止显示所有菜单项,则菜单可以在内部滚动。一个示例是在横向上观看电话上的菜单时。
级联菜单(仅限桌面)
对于级联菜单,根据屏幕边缘的接近程度垂直和水平定位菜单。
开发人员注意:此组件的实现可能因平台而异。通过使用标准平台实施,您将获得任何相关的未来改进。
菜单项
单行显示
每个菜单项仅限于一行文本(单个单词或短语),用于描述选中时将执行的操作。
菜单项还可能包含:
- 图标和帮助文本,如键盘快捷键
- 像复选标记一样控制以指示多个选定的项目或状态
菜单订购
具有静态内容的菜单应该在菜单顶部放置最常用的菜单项。
具有动态内容的菜单可能具有其他行为,例如将以前使用的字体放在菜单的顶部。订单可以根据用户操作进行更改。
菜单嵌套
菜单项可以显示嵌套的子菜单。理想情况下,将嵌套限制在一个深度,因为可能很难导航多个嵌套子菜单。
禁用的行动
将操作显示为已禁用而不是将其删除,可让用户知道它们在适当的条件下存在。
例如,当没有要重做的东西时,Redo被禁用。在选择内容之前,禁用剪切和复制。
行为
地点
菜单显示在所有其他应用内UI元素之上。
菜单位于其发光元件上方,使得当前选择的菜单项出现在发光元件的顶部。
解雇菜单
通过点击菜单外部或点击发射按钮(如果可见)来关闭菜单。
选择菜单项也应该忽略菜单。例外情况是菜单允许选择多个项目,例如,使用复选标记。
简单的菜单
手机或平板电脑
使用列表中的简单菜单显示特定列表项的选项。
垂直对齐
当靠近屏幕边缘时,简单的菜单垂直重新对齐,使所有菜单项都完全可见。
消歧:与简单菜单相比,简单对话框可以显示与列表项可用选项相关的其他详细信息,或提供与主任务相关的导航或正交操作。虽然它们可以显示相同的内容,但简单的菜单比简单的对话框更受欢迎,因为简单的菜单对用户的当前上下文的破坏性较小。
项目选择
选择一个选项会立即提交该选项并关闭菜单。
取消选择
触摸菜单外部或按系统返回按钮,取消操作并关闭菜单。
打开时,简单菜单会尝试将当前选定的菜单项与列表项垂直对齐。当前选择的菜单项突出显示。
当靠近屏幕边缘时,简单菜单会重新定位其垂直对齐方式,以便所有菜单项都完全可见。
简单的菜单出现在它们的发光元素上,而不是下面
菜单宽度因字符串长度而异,移动设备定义为56dp单位的倍数。
简单菜单始终在屏幕的左右边缘保持16dp边距(手机)或24dp边距(平板电脑)。
简单菜单始终与列表项文本的开头左对齐,并且不会根据触摸位置水平重新定位。