《iOS Human Interface Guidelines》——Multitasking

多任务处理

多任务处理让人们在屏幕上(以及合适的iPad模式)查看多个app,并且在最近使用的app中快速地切换。在iOS 9中,人们可以使用多任务处理UI(如下所示)来选择一个最近使用的app。

在多任务处理环境中的成功取决于与设备上其他app的和谐共处。在高层面上,这意味着app应该:

  • 用心地优化资源的使用来避免使用过多的CPU、内存、屏幕控件和其他资源
  • 优雅地处理其他app的干扰和声音
  • 停止和重新开始——即过渡到后台或从后台过渡——快速而平滑
  • 当没有在前台时对行为负责

下面的特有的指南会帮助你的app在多任务处理环境中专注于app切换获取成功。查看Adopting Multitasking Enhancements
on iPad
获取更多关于在iPad多任务处理环境下运行的信息。

准备好被打断和继续。多任务增加了后台app打断你的app的可能性。其他的特性例如推送广告和快速app切换也会导致更高频率的打断。你越快越准确地保存你app当前的状态,人们就能越快地重新启动并继续他们离开时的工作。为了给予用户一种无缝重启的体验,利用UIKist的保存和恢复功能(查看Preserving
Your App’s Visual Appearance Across Launches
获取更多信息)。

确保你的UI能够处理两层高度的状态栏。两层高度状态栏在例如进程中来电、语音录制和共享数据。在没准备的app中状态栏额外的高度会导致布局的问题。比如说,UI会变低或者被覆盖住。在多任务处理环境中,能够处理两层高度的状态栏尤其重要,因为有更多的app会导致其出现。

准备好暂停需要人们关注或者参与的活动。比如说,如果你的app是一个游戏或者播放视频的app,确保用户切换离开你的app时不会错过任何内容或事件。当人们切换回一个游戏或者视频播放器,他们想要像从没离开过一样继续体验。

确保你的声音表现得体。多任务处理使得你的app在运行时更有可能发生别的多媒体活动。因此你的声音也更有可能不得不暂停和重新开始来处理中断。查看Sound来获取指南帮助你确保你的声音符合人们的预期并且和设备上的其他声音和谐共存。

有节制地使用本地通知。一个app可以安排在特定的时间发送本地通知,无论这个app是挂起、在后台运行还是没有运行。为了达到最好的用户体验,避免用过多的通知纠缠人们,并且遵循Notifications中描述的创建通知内容的指南。

合适的时候结束后台用户发起的任务。当人们发起一个任务,他们通常期望它即使在切换离开app时也能结束。如果你的app正在执行一个用户发起的不需要用户额外交互的任务,你应该在挂起前在后台完成它。

本文翻译自苹果官方开发文档

查看完整合集:https://github.com/Cloudox/iOS-Human-Interface-Guidelines

时间: 2024-07-30 13:47:53

《iOS Human Interface Guidelines》——Multitasking的相关文章

《iOS Human Interface Guidelines》——Launch Files

启动文件 启动文件(或者图片)提供了简单的在你的app启动的时候iOS显示的占位图.这个占位图会让用户觉得你的app很快就有响应,因为它直接显示而且很快会被你的app的第一个屏幕代替.每个app都必须提供一个启动文件或者至少一个静态图片. 在iOS 8及以后的系统中,你可以创建一个XIB或者故事版文件来代替静态启动图片.当你在Interface Builder中创建一个启动文件时,使用尺寸类来定义不同显示环境的不同布局,使用Auto Layout来做小的调整.使用尺寸类和Auto Layout意

《iOS Human Interface Guidelines》——Toolbar Bar

工具栏 工具栏包含了执行与屏幕视图中的对象相关的操作的控件. 一个工具栏: 是半透明的 在iPhone上永远出现在屏幕视图的底部边缘.在iPad上也可以出现在屏幕视图的顶部边缘. 可以在键盘出现时.用户做一个手势时或者抱哈你的视图控制器过渡成水平紧凑环境时隐藏. API NOTE 工具栏一般包含在导航控制器(管理一系列层级的自定义视图显示的对象)内.查看Displaying a Navigation Toolbar和UIToolbar Class Reference来学习更多关于在你的代码中定义

《iOS Human Interface Guidelines》——3D Touch

3D Touch 3D Touch让iOS 9的用户多了一个交互的维度.在支持的设备上,人们可以通过按压主屏幕上的app图标来快速地选择其特有的操作.在app内,人们可以使用多种压力来获取一个内容的预览.在另一个视图打开内容以及获取相关的操作.(查看Adopting 3D Touch on iPhone来学习更多关于在你的代码中支持3D Touch的内容.) Peek 和 Pop Peek让用户可以在不离开当前环境的情况下预览一个内容以及执行相关的操作.元素通过在轻按时显示一个小的矩形视图(有时

《iOS Human Interface Guidelines》——Collection View

集合视图 集合视图管理有序的条目集合并且在自定义的布局中显示它们. API NOTE 查看Collection View Programming Guide for iOS来学习更多关于在你的代码中定义集合视图的内容. 一个集合视图: 可以包含一些可选的视图来视觉上区分条目的子集合或者提供装饰性的内容,比如自定义背景 支持布局间自定义的过渡动画(集合视图默认提供用户插入.移动或删除条目的动画) 支持额外的手势识别来执行自定义的动作.集合视图默认识别点击(选中条目)和长按(编辑条目). 使用集合视

《iOS Human Interface Guidelines》——Undo and Redo

撤销与重做 用户通过摇动设备来发起一个撤销操作,这会显示一个警告框来让他们: 撤销他们刚刚输入的内容 重新输入以前未完成的输入 取消撤销操作 你可以在你的app中以一种更一般的方式来支持撤销操作,通过说明: 用户可以撤销或重做的动作 在何种情况下你的app应该将一个摇动事件看做一个撤销手势 支持何种程度的撤销 查看Undo Architecture学习如何在代码中实现这个行为.如果你的app支持撤销与重做,遵循下面的指南来提供一个好的用户体验. 提供简短的描述短语来精确地告知用户他们正在撤销或重

《iOS Human Interface Guidelines》——Sound

声音 无论声音是你app用户体验的主要部分还是一个可选的增益,你都要知道用户对声音有何期待以及如何满足这些期待. 理解用户的期待 用户可以使用设备的控制来影响声音,并且他们可能使用有线或无线的耳机.人们也对他们的行为如何影响他们听到的声音抱有很多期待.虽然你可能会发现有些期待很惊人,但这都遵循用户,而不是设备,决定的用户控制. 当用户想要做如下事情的时候他们会使设备静音: 避免被不期待的声音干扰,比如电话铃声和收到短信的声音 避免听到用户行为副产品的声音,比如键盘或其他反馈声音.附带声音或者ap

《iOS Human Interface Guidelines》——Popover

弹出框 弹出框是当人们点击一个控件或屏幕上一个区域时显示的一个临时的界面. API NOTE 在iOS 8及以后的系统中,你可以使用UIPopoverPresentationController来显示一个弹出框.UIPopoverPresentationController定义了一个协议来让你调整你的弹出内容的显示风格去适应当前的显示环境.比如说,在水平常规环境下,你的内容可以在弹出框中显示:在水平紧凑环境下,你的内容可以在一个全屏的模态视图中显示. 一个弹出框: 是一个自包含的模态视图 在水平

《iOS Human Interface Guidelines》——Page View Controller

页面视图控制器 页面视图控制器使用两种风格中的一种来管理多页面内容间的过渡--滚动或者翻页.这个是iOS模拟器中翻页的样子: API NOTE 查看Page View Controllers来学习更多关于在你的代码中定义页面视图控制器的内容. 一个页面视图控制器: 对滚动风格没有默认外观 对于翻页风格,页面视图控制器可以添加页面间的书脊外观. 根据特定的风格,为页面间的过渡添加动画 对于滚动风格,当前页面滚动到下一页:对于翻页风格,当前页会表现地像书或笔记本的翻页一样. 使用页面视图控制器展示用

《iOS Human Interface Guidelines》——Edit Menu

编辑菜单 用户可以显示一个编辑菜单来在文本视图.网页视图和图像视图执行诸如剪切.粘贴和选择的操作. 你可以调整一些菜单的行为来在你的app中给用户给多的内容控制.比如你可以: 指定哪一个标准菜单命令对当前的环境合适 在菜单显示之前决定菜单的位置这样你就可以保护你app UI中重要的部分免于被遮挡 当用户双击来显示菜单时决定默认选中的对象 你不能改变菜单它自己的颜色和形状. 查看Copy, Cut, and Paste Operations获取如何在代码中实现这些行为的信息. 为了确保你app中的