大多数浏览器和
Developer App 均支持流媒体播放。
-
利用自定操作为 App 加上辅助功能
自定操作可以简化用户借助辅助技术使用您 app 的体验,并且可以帮助您减少用户浏览您的界面和进行互动时需要轻扫和轻点的次数。了解如何将自定操作用于旁白和切换控制。自 iOS 13 起,已将自定操作引入到 iOS 上的全键盘访问和语音控制。
资源
相关视频
WWDC23
WWDC20
-
下载
大家好 我是 Dan 我是辅助功能组的 一名工程师 我非常开心能够向大家 介绍辅助功能自定义操作 以及如何能够 通过在 App 中使用 辅助技术来增进体验的 让我们开始吧
自定义操作有 两大优势 第一个优势是减少 你的 App 中的杂乱
这对所有 使用 App 的人都很重要 但是对于那些使用辅助技术的人 来说尤为重要 我后面会解释原因 第二个优势是关于 提升 App 中 较为复杂的交互的 便利性和速度
我们先从 减少杂乱开始 为此我想先讲一下旁白 旁白是一种内置的屏幕朗读器 是我们为了方便 那些盲人或低视力的人 使用我们的产品所做的
使用旁白的人能够 通过多种方式来 浏览他们的 App 但是其中最受欢迎的 浏览一个新的 App 或 界面的方式是左划或 右划来在上一个和 下一个项目之间移动 我有一个一直在做的 App 帮助我追踪我最喜欢的 花生酱品类 如果你打算在不使用 旁白的情况下使用这个App 而我们希望提高 这个列表中的第二罐花生酱的评级 那么我们 应该怎么做呢
你可能会先 扫描这个列表 直到你找到 你想要的那一罐
然后你可能会把注意力集中在那个 单元格然后寻找一个按钮 能够完成你想要 做的操作 然后你只需点击它即可 现在这看起来非常直观 但这是因为 UI 能够支持这一直观感觉 通过有逻辑地 把单元格与按钮整合起来 这让我们能更容易地去处理 和消化内容 但是反之如果 App 以另一种方式布局会怎样呢
可能是像这样的 请注意现在按钮 在单元格下面 这意味着我们需要 滑动更多的内容
另外 按钮与 单元格的对应关系 也更加模糊 这很可能就是 有人在通过旁白 使用你的 App 时的体验 让我来展示一下我的意思
首先我们来看一下 使用旁白来 对这个 App 中的某个单元格 进行浏览是什么样子的 Patty's creamy Noster 得 1 分 满分 5 分 添加至收藏按钮 减分按钮 加分按钮
当我们滑动过这个单元格后 我们关注这三个按钮 添加至收藏 减分 和加分按钮 而且这三个按钮存在于 这一列表的每一个单元格中
因此倘若我们想要找到 第 10 罐 我们就需要听到 旁白读这些按钮 30 次 这种重复很快就会令人疲倦
此外我们还要 注意记得上一个 听到的花生酱是哪一罐 否则我们就不知道 若我们激活其中一个控制按键 哪些内容会受到影响
那么让我们再重新来看这个 App 只是这一次 App 的设计有轻微区别 我更改了这些按钮 他们不会再出现在旁白中 我对这些单元格添加了自定义操作 因此当旁白 读到一个单元时 我们可以 用一个手指向上或向下划动 来选择一个操作 然后 双击来激活这个操作 我们来看一下
Patty's creamy Noster 得1分 满分5分 Anna's chunky sugar-free 得 4 分 满分 5 分 可选操作包括 添加收藏和加分
这一次当我们划过 这一单元时 我们会直接进入到 下一个单元 这让我们可以 更容易地浏览 这些内容 从而找到我们 想要的内容 一旦我们找到想要的内容 我们就可以 进一步在那里选择一个交互操作 这样的方法 更贴近 我们之前所说的 视觉浏览一个列表的体验
所以自定义操作可以 帮助我们减少杂乱 消除重复性操作 我们也可以借此减少 使用 App 时候的 自身认知压力 因为我们可以直观地选择 一个交互操作 当我们找到 我们想要交互的内容后 这些操作也变得 不再模糊
这就大大简化了操作体验
下面我们来看自定义操作 能如何提升 App 中复杂交互操作的 便利性和速度
在此之前我想先介绍 开关控制 这是我们为 行动不便人士开发的另一项功能 这些人群可以 通过简单的一个到两个 操作与他们的设备交互 我添加了一些额外的 功能到这个 花生酱 App 当我们 长按一个单元时 一个操作菜单 会弹出来 提供一些额外选项 选项包括发送 关于其中的 一罐花生酱的信息给朋友等 我有两个开关与 此设备配对 橘黄色的开关会将 开关控制的关注点移动到 下一个项目 而白色的开关 则负责选取这个项目
要记住 开关可以 被设计用于 满足不同需求 比方说 有人可能会 将开关安装在一个 他们能够 用头部操控的轮椅上
让我们来看一下 使用开关控制来 发送关于第二罐 花生酱的信息给我们的朋友
因此我们可以使用橘黄色的开关 来浏览至第二个 单元 而后使用白色 开关来选中它 这会弹出 开关控制菜单 提供了我们可以与该单元 交互的其他选项
我们可以向下浏览至 页面控制 选中它可以看到更多选项 在这里我们可以按选择键 进入菜单然后浏览至手势 选择它会让我们 看到一系列我们 想要通过触屏来 实现的手势
从这里我们可以浏览至 第二行然后按下 选择键来进入菜单 然后选择点按并长按
选择它将实现我们的 长按手势 并弹出 我们的操作菜单 我们可以 从中浏览并选取 发送给朋友 我们可以实现点按 然后就可以了
现在回想起来 我们 完成了所有操作 而我们从未 触碰屏幕
这非常酷 对不对
但你可能也注意到了 这一交互一般需要 我们做两次点按 一次长按和一次在操作菜单中的点按 通过开关控制
需要进行 18 次点按 但是 自定义操作可以显著地 减少这个数字
我们来重新看一下 不过这次我将 自定义操作添加到了 App
我们将使用橘黄色 开关来浏览到 第二个单元 不过这次当 我们在 开关控制菜单的第一页选择时 菜单上已经有了 我们添加的各种操作 我们可以进入菜单浏览至 发送给朋友 按下选择键 就完成了
我们甚至不需要 浏览第一次弹出的 操作菜单 我们就直接到了我们需要的地方 这是一种明显更快的交互操作 我们可以使用 18 次点按的方式 而我们也可以使之节省至 6 次点按 这比之前的点按次数 节省了 67% 因此 自定义操作可以 大大的提升便利性和速度
我们删除了繁琐的手势 大大地 加快交互速度 此外 我们改进了 那些交互选项的 突出性和便利性 通过将它们放在 开关控制菜单的第一页 我们不需要浏览 很多子菜单 尝试不同的手势 来弄清楚 可能的选择 反之 一切都变得 更加简单和直接 现在我打赌在听到 这些自定义操作的 绝妙优势之后 你已经等不及在你的 App 中使用它们了 幸运的是 这很简单
你只需要重写 视图中的 accessibilityCustomActions 属性 然后返回 一组 UI 辅助功能 自定义操作对象 每个对象都有一个名字 一个目标和一个选择器
你的函数只需要 返回一个布尔值判断 操作是否成功 并将一个 UI 辅助功能 自定义操作作为一个参数 今年我们有一个新版本的 API 可以接受一个 操作处理器 替代目标和选择器 因此如果使用代码组 更适合你的 App 的设计 我们建议你 尝试一下
是的
此外 如果你想要 用一个自定义操作来替换 类似一个单元内部的 附件控件的内容 你可能 需要先将 这些控件上的 isAccessibilityElement 设为 false 因此它们就不再 能通过辅助技术 进行浏览
除了我们今天 在演示中提到的旁白和开关控制 自定义操作可以 被用于很多 我们所提供的辅助技术 包括全键盘访问 和语音控制 这些都是今年全新的 我非常建议你将 其中一些功能打开 用你的 App 尝试 寻找这些自定义操作能够 提升体验的方式 非常感谢大家 [掌声]
-
-
正在查找特定内容?在上方输入一个主题,就能直接跳转到相应的精彩内容。
提交你查询的内容时出现错误。请检查互联网连接,然后再试一次。