macos:Animation

出自UXGuide.net

跳转到:导航, 搜索

请帮助我们修订和更新本文的中文部分

本文的中文部分虽然取自官方最新中文版本,但与英文原版相比已落后了一年多,可能无法反映英文版本中最近的修改,且文中笔误、前后译法矛盾、未翻译完全的片断较多,请您帮助一起修订完善。详情参见中文版修订完善计划

动画效果
Animation

A hallmark of Mac OS X is the use of animation to enhance the user experience, such as in the minimizing of windows to the Dock, the unfurling of sheets, and the sliding of drawers. In Mac OS X v10.5 and later, animation powers the movement of icons in the Finder Cover Flow view, the springing of items from a stack in the Dock, and the arrival of buddies in an iChat window, among other things. Figure 6-2 shows a "time-lapsed” view of items springing from a stack.

Mac OS X的特征之一就是使用动画效果来加强用户的体验效果,如窗口的最小化,表单窗口的展开以及抽屉窗口的滑出。在Mac OS X 10.5及以后的版中中,动画效果为Finder中Cover Flow视图中图标的移动,Dock中堆栈的弹出,iChat窗口中好友登录通知等提供了支持。图6-2显示了Dock中堆栈弹出的效果。

Figure 6-2 Animation allows items in a stack to emerge smoothly
图 6-2 动画效果使得Dock上堆栈平滑的弹出

mt_animationex.jpg

Animation allows users track the movements of objects, helps them understand the effects of their actions, and lends a sense of physicality and realism to the virtual world they see on the display screen. In general, animation is ideal for:

动画效果能够让用户跟踪物体的移动,帮助用户了解操作的效果,让屏幕上的物体更有实物感。通常,动画效果可以用作:

If you are developing an application to run in Mac OS X v10.5 and later, you, too, can take advantage of animation by using Core Animation programming interfaces. As with most powerful tools, however, it’s important to use animation wisely, that is, as a subtle enhancement to the user experience, not as the focus of the user experience. For example, you might consider using animation in the following cases:

如果您是在10.5及其以后版本的Mac OS X上开发程序,您也可以调用Core Animation编程接口来使用动画效果。然而,作为一项强有力的工具,您应该有选择的使用动画,也就是说,将其作为用户体验的有益的补充而不是重点功能。例如,在下列情况下可以使用动画:

当用户遍历一个集合时。
When navigation is similar to familiar, real-world activities, such as flipping through pages in a book or DVDs on a shelf, users are better able to grasp the organization and extent of a collection. In addition, when items in a collection appear to have realistic dimensionality and weight, they’re easier to recognize at a glance.
当遍历和现实中的行为相似,例如书页或者DVD的翻动,用户最好能够理解集合的组织结构和范围。此外,如果集合中的物品具有对应现实中的形状和重量时,用户可以一眼就辨认出它们。
当有助于用户在操作完成前了解操作的结果时。
Showing users the results of an action before they complete it allows them to be sure of themselves and avoid mistakes. For example, items in the Dock move aside when users drag an object into the Dock area, showing them where the new object will reside when they release the mouse button.
在操作完成前就显示操作的结果能够让用户避免误操作。例如,当用户将对象拖到Dock上时,Dock的对象会让开从而让用户知道当他们放开鼠标时新对象的位置。
当用户处在不同的交互模式时。
When users enter a different mode of interaction, such as full-screen mode, animation can guide them and provide clues that help them keep track of the current mode. For example, the animated star field in Time Machine provides a completely different user experience that helps the user distinguish between the Time Machine view of the system and the user’s standard view of the system.
当用户进入一个不同的交互模式如全屏模式时,动画效果能够提示用户并且帮助他们了解当前模式。例如,时光机的动画的星域提供了用户完全不同的用户体验,让用户能够区分系统的时光机视图和系统的标准视图。
当改变对象的属性时。
Showing an object’s transition from one state to another, instead of showing only the beginning and ending states, helps users understand what’s happening and gives them a greater sense of control over the process. For example, in an application that allows users to change several properties of a document at one time, an icon that smoothly shows the effects of the combination of changes would provide valuable feedback.
显示一个对象从一个状态到另一个状态的转变过程,而不是仅仅显示开始和结束的状态,能够帮助用户了解正在发生什么而且让用户就一种掌控着一切感觉。例如,在程序中允许用户同时改变文档的几个属性,一段平滑地显示改变的效果的动画能够提供很有价值的反馈。
当操作发生得太快,用户来不及跟踪时。
Although speed and efficiency are essential in software, sometimes an action can take place so quickly that its context or result is unclear. When it’s important that users understand a connection or a process, animation can help them watch actions occur in a more human time frame. For example, when the user minimizes a window it doesn’t just disappear from the desktop and reappear in the Dock; instead, it moves fluidly from the desktop to the Dock so the user knows where it went.
虽然速度和效率是程序的基础,但有时候一个操作发生得太快以至于它的上下文和结果都不是很明了,而这一切对用户很重要,动画效果能够帮助用户在一个合适的时间段内观察操作。例如,当用户最小化窗口时,窗口不是立即从桌面上消失并在Dock上重新出现,而是优美都从桌面移动到Dock,从而用户清楚的知道窗口到哪里去了。

If you decide to use animation, therefore, be sure the animation subtly enhances the tasks and concepts your application focuses on and doesn’t distract from them. Although animation can clarify obscure or hidden processes and provide valuable feedback, gratuitous or illogical animation can degrade the user experience, in addition to decreasing the performance of your application. In particular, you should:

如果您决定使用动画效果,那么确保动画效果是增强了您的程序核心功能而没有喧宾夺主。虽然动画效果能够让不是很清晰或者隐藏的过程更清晰并提供有价值的反馈,然而无必要和没有意义的动画效果会降低用户的体验,此外还降低了程序的性能。特别地,您应该:

避免在经常需要用户输入的程序(尤其是文本输入)或者用户用来创作的程序中使用类似Front Row或时光机类似的动画效果。一个带动画效果的,全屏幕的,只显示简单而又巨大的控件的用户接口使得创作过程很困难而没有效率。
避免把每样东西都加上动画效果。
Although it’s tempting to think that more animation results in greater clarification and better feedback, it’s not generally true. Most tasks and actions in an application are best performed quickly and with a minimum of fanfare.
更多的动画效果会导致更清晰的效果和更好的反馈是一种很有诱惑力的想法,但通常事实并不是这样。程序中大部分的功能和操作最好快速的完成。
Users understand how common user interface elements work, and they don’t appreciate being forced to spend extra time watching unnecessary animation every time they click a button.
用户了解通用的接口元素是怎么工作的,他们不会对每次点击一个按钮时都被强迫观看一段不必要的动画而感到愉快。

To learn more about using animation in your application, see Core Animation Programming Guide.

关于在程序中使用动画效果的更多信息,请参考Core Animation编程指南

导航
工具箱