在开发 iOS 应用时,无障碍性问题是经常被忽视的问题之一。然而,即使是在日常开发中,我们都应该关注如何使应用程序可访问,以便让所有人都可以使用我们的应用程序。
什么是无障碍性?
无障碍性是指人们在使用设备和软件时所遇到的各种物理、社会和技术上的障碍都被消除了。对于视觉障碍的用户来说,这意味着他们可以使用聚焦引导、带标签的控件、正确的语音提示等特性来浏览应用程序。对于听力有障碍的用户来说,这意味着他们可以通过语音提示来导航应用程序。对于身体有障碍的用户来说,这意味着他们可以使用键盘和鼠标来导航应用程序。
为什么要关注 iOS 应用程序的无障碍性?
过去,无障碍性被视为是开发人员的一个附加任务,这是一个错觉。其实,无障碍性对 iOS 应用程序的设计和开发都具有实际的价值。应用程序会获得不同类型的访问者,而无障碍性功能可以使每个人使用应用程序变得更加方便易用。实现无障碍性功能还可以提高应用程序的用户基础、提升用户的满意度、增加市场份额等实际效果。因此,我们建议在设计和开发 iOS 应用程序时,将无障碍性问题考虑在内。
如何实现 iOS 应用程序的无障碍性
实施 iOS 应用程序的无障碍性需要考虑以下几个方面:
1. 使用标准控件
iOS 中有许多原生控件。使用这些控件可以使应用程序可访问性更佳,因为用户已经熟悉了它们。添加自定义控件也可以实现功能,但要避免提供使无法在没有视力的情况下使用的控件。例如,如果必须使用自定义控件,请确保它们没有任何图像文字,隐藏文本字母数字等等。
2. 添加VoiceOver支持
iOS 中有一个名为 VoiceOver 的屏幕阅读器,每当用户触摸屏幕或从屏幕阅读器打开时,该功能会自动启动。这将有助于使用视觉障碍的人浏览您的应用程序。您可以添加适当的标题,语音输入标签,区域标签,音频描述等等,以便语音读法可以让您的应用程序更易于使用。
以下是一个展示如何使用 VoiceOver 的示例代码:
-- -------------------- ---- ------- ------- ---- ------------------------ - -- -------- ----- ----- ----------------------- -- --- --- ----- --- -------------- ------------------ - -------- -- -------- -------- ----------------------- -- ---- -- ------ ------ ------------- ------- -------------------------- - ------------------------------------- - ------- ---- ------------------------------------- -- ----------------------------- - -- --- --- ------ ------- ------ - --------------------------------- ---------------------- -- ----------- -------- ---- ------- ----- --------- -------------------------- - - ----- ------- ---- ---------------- -- ---- - -- --- ------- -------- -- ---------- ------ ---- -
3. 使用动态字体
不要使用固定大小的字体,而是使用动态字体来适应不同的光线和视觉需求,将会更加适合所有人的需要。iOS 中使用 UIFontMetrics
可实现自适应字体。使用动态字体将对用户访问您的应用程序的体验产生显著的影响。
// Set font size to 18 points with a dynamic weight. let headlineFont = UIFont.preferredFont(forTextStyle: .headline) let scaledHeadlineFont = UIFontMetrics(forTextStyle: .headline).scaledFont(for: headlineFont, maximumPointSize: 24)
4. 提供充足的对比度
确保您的应用程序的颜色对比度高以方便所有用户使用。使用高对比度颜色可以帮助使用视觉障碍的用户更好的辨认对象。 对比度不够的应用程序,可能会让用户感觉混淆和更加困难。
5. 增加交互性
iOS 应用程序应该充分利用 iOS 上提供的大量交互性。增加用户交互性,使每个人都可以使用您的应用程序。例如,允许通过滑动屏幕事件来访问下一页,轻敲屏幕打开选项等等。
结论
无障碍性在 iOS 应用程序设计和开发中至关重要,在实现应用程序的过程中,需要考虑到无障碍性。这篇文章包括的五个实施无障碍性策略可以帮助 iOS 设计和开发人员开发出更容易使用的应用程序。在考虑无障碍性时,实施基于使用标准控件,添加 VoiceOver 支持,使用动态字体,提供充足的对比度和增加交互性将会更具指导性。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/676fdeb1e9a7045d0d7796ed