引自《iOS12界面交互设计规范(iOS 12 Human Interface Guidelines)》
小部件可以理解为用来展示少量及时有用的信息或者应用程序特定功能的扩展。比如,新闻应用的小部件主要显示头条新闻。日历应用则提供了两个部件,其中一个显示当日事件另一个则显示下一个事件。笔记应用则允许用户预览最近的笔记以及快速创建一条新的笔记,提醒,照片或者图画。小部件的可定制化空间很大,其可以包含按钮,文本,自定义布局,图像以及其它。
小部件通常会在用户通过3D触摸按压主屏幕的应用图标时在其快速操作列表中显示。用户也可以新增他们所关心的小部件至搜索屏幕,通过在主屏幕界面右滑查看。应用程序的目标应该是设计一个用户愿意增加到搜索屏幕的小部件。

搜索屏幕部件

主屏幕快速启动部件
设计一个方便查看的交互体验部件(Design a great glanceable experience.)用户使用小部件来获取简短的信息更新以及执行简单的任务,因此传递必要的合适大小及特性的信息是非常必要的。尽可能的提供可以只通过一次点击便可以完成的任务。另外小部件中是不支持滑动的。
快速显示内容(Show content quickly.)用户只会花费很少的时间来查看小部件并且不会花费太长的时间等待内容的加载。通过在本地保存缓存的方式来保证用户总是可以快速的查看其最近更新的内容。
提供充足的边距和填充(Provide ample margins and padding.)避免将内容扩展到小部件的边缘范围。通常来讲,需要在部件每个边缘都提供一个充足的只是包含几个像素的空间。使用小部件上方的应用图标进行对齐。内容的展示在位于图标中介位置时效果会最好。
支持自适应(Be adaptable. )小部件的宽度取决于设备的分辨率。而小部件的高度以及部件中所展示的信息则取决于其是否是折叠还是展开的。折叠高度通常差不多为2行半的高度。扩展高度则最多不能超过屏幕。快速操作列表通常只显示在折叠状态下。且当其处于折叠状态时,小部件通常只显示可以单独存在的信息。当处于扩展状态时,小部件在初期信息的基础上显示额外的信息。就天气应用的部件来举例,折叠状态时显示当前的天气信息,扩展状态时显示每个小时的天气信息。
避免自定义小部件的背景(Avoid customizing the background of a widget. )系统所提供的明亮模糊的背景主要目标为连贯易读。永远不要使用照片作为背景,因为其可能会与锁屏壁纸冲突。
通常情况下,使用黑色或深灰色的系统默认字体(In general, use the system font in black or dark gray for text. )系统字体设计原则为易读,而且灰色在标准的部件背景中效果也比较好。
合适情况下,引导用户进入你的应用去做更多的事情(When appropriate, let people jump to your app to do more. )小部件应该可以独立于应用进行操作。但是如果用户偶然进行需要做小部件所能提供的更多的操作时,尽量使其简单。但是不要加入类似“打开应用”的按钮来占据本应该属于内容的空间。相反的应该允许用户点击内容本身进入应用来查看或编辑内容。比如日历部件,用户便可以通过点击事件来打开日历应用。但是永远不要使用你的部件打开其它应用。
选择一个出色的部件名称(Pick a good widget name.)每一个部件上方均会显示一个应用图标及小标题。通常来讲,部件的名称应该符合应用的名称。如果你的应用提供了多个部件,那么考虑为主要的那个部件提供一个主要的名称。
使用户知晓认证登录后的附加价值(Let people know when authentication adds value. )如果用户登录应用后可以提供额外的信息,那么请确保用户对此是知晓的。
为快速操作列表选择一个部件(Choose a widget for the quick action list.)如果你的应用包含多个部件,选择一个作为快速操作列表中的内容。