iOS 11 给用户带来了一种全新的操作方式「Drag & Drop」:

现在你可以在 iPad 进行拖放操作,将文字、图片和文件从一个 app 移到另一个。这一功能针对 iPad 宽大的 Multi-Touch 显示屏度身设计,拖放内容仿佛变魔术一般。你可以轻触并移动处于屏幕上各个位置的几乎任何内容,甚至还能同时移动多个项目。

如果用一句话概括 Drag & Drop,我会说:给数据复制或剪切带来一种符合直觉的、酷炫的操作方式。

看两个例子

一图胜千言,感受 Drag & Drop 的酷炫最直观的方式就是看操作的动图:

从 Spotlight 拖拽数据到 Safari:

同时控制多个拖拽的内容,例如从备忘录拖拽多个链接到 Safari 打开:

聊聊 Drag & Drop 的特点

仔细体验过 Drag & Drop 以及阅读了相关文档之后,我觉得这种操作完全改变了日后数据复制和剪切的方式,尤其是在 iPad 上,Drag & Drop 有很多有意思的特点,比如:

1. 只有目标可以看到数据,并且接受拖拽对象的目标可以由开发者指定

这决定了用户可以相信拖拽对象的数据安全,例如开发者可以指定拖拽数据只被同开发的 app 接收,还是能被任意 app 接收。

2. 对多点触控有令人惊叹的支持

要说玩多点触控,世界上应该没有比 Apple 玩得好的,这一点在 Drag & Drop 上面又得到了体现。你可以多个手指同时拾起多个被拖拽的对象,甚至可以包括不同的数据类型,比如一个文字和多个图片,然后一一把它们拖放到目的地。

3. 复制、剪切或是禁止

当你打算要释放一个被拖拽的对象时,系统会通过角标来暗示你这个操作是什么,正如前文提到的那样,拖拽有可能是复制数据,也有可能是剪切数据。iOS 会在复制数据的时候显示一个加号,而在不接受该数据的时候显示一个禁止符号。

4. 在 iPad 上会有更全面的支持

其实在官方的视频里面,Apple 是有明确的提到 Drag & Drop 在 iPhone 上的支持只能在应用内(不能像 iPad 那样跨应用操作),但是我们可以发现目前的 iOS 11 Beta 里面其实是可以做到跨应用的,就像这个视频一样,当然我们需要了解的是,不管最终我们能不能做到 iPhone 上的跨屏拖拽,iPad 的跨屏体验始终是要比 iPhone 好很多的,所以可想而知的是,以后的 iPad 应用大多都会对 Drag & Drop 提供不错的支持。

5. Spring-loading

很抱歉不知道这个术语的中文叫什么,但这个特性很重要,你可以在拖拽的过程中把手指移动到图标或者按钮上,过一会儿之后会产生类似点击了该按钮的效果(当然你也可以用另一个手指点击)。这个操作可以让你一个手指就完成拖拽和目的地的寻找操作,可以说体验是十分的赞了。

最后一点,就像 Apple 以往的做法一样,当他要对开发者公布一个新特性时,往往系统原生的应用对其都有了非常令人赞叹的支持。试试备忘录、邮件、提醒事项等应用就知道,这种支持已经达到了无缝的程度。

谈谈 Apple 对它的期望

这一部分我们通过设计指南来聊聊 Apple 希望开发者做成什么样子,或者说什么样的体验才是好的(篇幅原因这里只节选比较重要的几点)。

1. 可选择的内容要支持拖拽,可编辑的内容要支持接收拖拽内容

这两种内容支持拖拽十分符合直觉,同时 Apple 也指出,在同样的场景下也要支持复制和粘贴操作。

2. 复制还是剪切?看场景

这里对应用的场景提出了建议,例如从 A 应用拖拽到 B 应用,绝大部分的情况下都应该是复制一个数据过去,而拖拽到自己应用本身,却有时候可以是复制有时候可以是剪切,比较直观的例子是前面提到的提醒事项拖拽到另一个列表是剪切效果。

3. 尽可能的使用标准的控件来显示文字

很好理解,在通常情况下,默认的控件本身对这些酷炫的特性就有比较好的支持,遵循原生是 Apple 希望的设计风格。

4. 为了效率考虑,尽可能的支持多个项目的拖拽

比如从相册拖拽同时拖拽多个文件到邮件里面,一松手即完成所有图片的插入,再也没有比这个更酷的了。

5. 考虑 Spring-loading

这个操作可以令应用增色不少,但同时也要提供预备方案,要让其是一个能被用户发现的亮点,而不是唯一的方式。

6. 给用户足够的提示

例如在可接受拖拽的时候在视觉上给出明确的变化,在文件需要下载的时候给出进度等。

最后再说两句

符合直觉,这是我在本文提到最多的概念,事实上这也是设计指南里面提到的。符合直觉是一件不容易的事情,与此同时增加一些打动用户的加分项,这就是一个非常完美的交互方式。

Drag & Drop 一定会成为数据复制和剪切的主流操作方案,因为它非常的高效率并且符合直觉。这是 iOS 上首次出现的交互方式,但在 macOS 上面却已经久经考验,可见随着人们对移动生产力需求的增加,像这样提高效率的操作也会在移动平台渐渐地多起来。

我们可以看到,在 iOS 11 里面,Apple 对 iPad 做了非常多的优化,简直就是一个完全新的系统。看样子解放移动平台生产力这件事,Apple 是铁了心要走下去了。

很酷,不是吗?