编辑菜单

用户能够显示一个编辑菜单来在文本视图、网页视图和图像视图运行诸如剪切、粘贴和选择的操作。

你能够调整一些菜单的行为来在你的app中给用户给多的内容控制。比方你能够:

  • 指定哪一个标准菜单命令对当前的环境合适
  • 在菜单显示之前决定菜单的位置这样你就能够保护你app UI中重要的部分免于被遮挡
  • 当用户双击来显示菜单时决定默认选中的对象

你不能改变菜单它自己的颜色和形状。


查看Copy,
Cut, and Paste Operations
获取怎样在代码中实现这些行为的信息。

为了确保你app中的编辑菜单行为符合用户的期待,你应该:

显示在当前环境有意义的命令。比方说,假设没有内容被选中,菜单不应该包括复制和剪切。由于这些命令是对选中内容操作的。相同的,假设某些东西被选中了,菜单就不应该包括选择。假设你在一个自己定义的视图支持编辑菜单。你要对确保菜单显示的命令适合当前的环境负责。

调节你布局中显示的菜单。iOS在插入光标或选择内容的上面或以下显示编辑菜单,这取决于可使用的空间,而且放置菜单指针这样用户就能够看到菜单命令是怎样和内容关联的。必要的话,你能够编码在菜单显示之前决定菜单的位置这样你就能够保护你app UI中重要的部分免于被遮挡。

支持用户能够唤起菜单的全部手势。尽管触摸和长按手势是用户显示编辑菜单的主要方式,他们也能够在文本视图中双击一个单词来选择单词并同一时候显示菜单。假设你在一个自己定义的视图中支持菜单,确保响应全部的手势。

此外,你能够定义用户双击时默认选中的对象。


不要在你的UI中创建一个能够在编辑菜单中获取的命令的button。比方说。让用户使用编辑菜单运行复制操作比提供一个复制button要好。由于用户会想知道为什么在你的app中有两种方式去做同一件事情。

假设对用户实用的话,考虑支持静态文本你的选中。比方说,一个用户可能想复制一个图片的标题,但他们不想复制标签元素或者视图标题的label,比方账目。在文本视图中,单词的选中应该是默认的。

不要让button标题可选中。一个可选中的button标题会让用户非常难不激活button的情况下显示编辑菜单。

一般来说。行为类似button的元素不须要被选中。


将支持撤销与反复和对复制与粘贴的支持联合起来。人们常常在改变想法的时候期望能撤销近期的操作。由于编辑菜单在运行动作前不会请求确认。你须要给用户机会去撤销和反复这些操作。

假设你须要创建类似下方的自己定义的编辑菜单元素。遵循这些指南:



直接在用户选中内容上方创建编辑、更改或其它动作的编辑菜单。人们期待标准菜单栏目在当前环境文本或对象的上方操作,而且最好你自己定义的菜单栏目也有类似的行为。

在全部系统提供的条目后面列出自己定义的条目。

不要在系统提供的条目中散布你的自己定义条目。


保持自己定义菜单栏目的数量合理。你不想要过多的选项淹没你的用户。


为你的自己定义菜单栏目使用简洁的名字并确保名字精确地描写叙述了命令的功能。一般来说。条目名应该是描写叙述运行的动作的动词。

尽管你通常应该使用一个单一的大写单词作为条目名,假设你一定要使用短语的话,使用标题风格的大写。(简短地说,标题风格的大写意味着大写每一个单词。除了文章、并列连词和四个字母或下面的介词。)



本文翻译自苹果官方文档

《iOS Human Interface Guidelines》——Edit Menu的更多相关文章

  1. 《iOS Human Interface Guidelines》——Multitasking

    多任务处理 多任务处理让人们在屏幕上(以及合适的iPad模式)查看多个app,而且在近期使用的app中高速地切换. 在iOS 9中.人们能够使用多任务处理UI(例如以下所看到的)来选择一个近期使用的a ...

  2. 《iOS Human Interface Guidelines》——Search Bar

    搜索栏 搜索栏接收用户输入用于搜索的文本(例如以下,带有占位文本). API NOTE 查看UISearchBar学习怎样在你的代码中定义搜索栏.查看UISearchDisplayController ...

  3. 《iOS Human Interface Guidelines》——Popover

    弹出框 弹出框是当人们点击一个控件或屏幕上一个区域时显示的一个暂时的界面. API NOTE 在iOS 8及以后的系统中.你能够使用UIPopoverPresentationController来显示 ...

  4. 《iOS Human Interface Guidelines》——System Button

    系统button 系统button运行一个app特定的动作. API NOTE 在iOS 7中,UIButtonTypeRoundedRect被又一次定义成UIButtonTypeSystem.查看U ...

  5. 《iOS Human Interface Guidelines》——Wallet

    Wallet Wallet(钱包)帮助人们查看和管理Pass(凭证),这是一种相似于登机牌.优惠券.会员卡.奖励卡和各种票的物理凭证的数字替代.Wallet也同意人们加入信用卡.借记卡和储值卡来和Ap ...

  6. 《iOS Human Interface Guidelines》——Container View Controller

    容器视图控制器 容器视图控制器管理和展示它的子视图集合--或者子控制器集合--以一种自己定义的方式. 系统定义的容器视图控制器的样例有标签栏视图控制器.导航栏视图控制器和分栏视图控制器(查看Tab B ...

  7. 《iOS Human Interface Guidelines》——Segmented Control

    分段控件 分段控件是一组线性段.每一个button相应的功能能够显示一个不同的视图. API NOTE 查看UISegmentedControl来学习很多其它关于在你的代码中定义一个分段控件的内容. ...

  8. 【译】iOS人性化界面指南(iOS Human Interface Guidelines)(一)

    1. 引言1.1 译者自述 我是一个表达能力一般的开发员,不管是书面表达,还是语言表达.在很早以前其实就有通过写博客锻炼这方面能力的想法,但水平有限实在没有什么拿得出手的东西分享.自2015年7月以来 ...

  9. iOS 人机交互指导方针(iOS Human Interface Guidelines)

    iOS 人机交互指导方针(iOS Human Interface Guidelines) 太阳火神的漂亮人生 (http://blog.csdn.net/opengl_es) 本文遵循"署名 ...

随机推荐

  1. Pairs Forming LCM

    题目: B - Pairs Forming LCM Time Limit:2000MS     Memory Limit:32768KB Description Find the result of ...

  2. Vue的学习--怎么在vue-cli中写网页

    vue.min.js和vue-cli的区别和联系我现在还是没有太清楚,大概是还没搞清楚export default和new Vue的区别,先浅浅记录一下怎么“用vue-cli来写网页”. “vue-c ...

  3. BZOJ2733: [HNOI2012]永无乡(线段树合并)

    Description 永无乡包含 n 座岛,编号从 1 到 n,每座岛都有自己的独一无二的重要度,按照重要度可 以将这 n 座岛排名,名次用 1 到 n 来表示.某些岛之间由巨大的桥连接,通过桥可以 ...

  4. log4j.properties配置与加载应用

    log4j.properties总结:   一.介绍 Log4j是Apache的一个开放源代码项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台.文件.GUI组件.甚至是套接口服务 器 ...

  5. 14.ZooKeeper Java API 使用样例

    转自:http://www.aboutyun.com/thread-7332-1-1.html package com.taobao.taokeeper.research.sample; import ...

  6. 96.udp通信

    运行截图 客户端 创建客户端套接字,用于创建UDP通信 SOCKET socket_client; 创建UDP通信 socket_client = socket(AF_INET, SOCK_DGRAM ...

  7. 深拷贝&浅拷贝

    1.区别 浅拷贝:只拷贝了基本数据类型,引用数据类型只复制了引用,没有复制实体. 深拷贝:拷贝所有的层级属性 2.浅拷贝 (1) 直接赋值 拷贝之后,所有层级属性仍然公用了地址,会被影响 var a ...

  8. 【例题 7-2 UVA - 11059】Maximum Product

    [链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] C语言for循环练习题 [代码] /* 1.Shoud it use long long ? 2.Have you ever tes ...

  9. NYOJ448_寻找最大数【贪心】

    寻找最大数 时间限制:1000 ms  |  内存限制:65535 KB 难度:2 描写叙述 请在整数 n 中删除m个数字, 使得余下的数字按原次序组成的新数最大, 比方当n=920813467185 ...

  10. 硬件——STM32 , 录音,wav

    详细的wav头文件解析,有例子:http://www.cnblogs.com/chulin/p/8918957.html 关于录音程序的编写: 我的思路是改写原子的程序,原子的程序需要借助VS1053 ...