默认情况下,SwiftUI 应用程序具有极高的可访问性,这绝非偶然-它是从最早计划到框架中的,除非您积极选择使用默认值,否则您会发现自己的应用程序可以很好地完成无需您进行额外的工作就可以访问。
这种行为的关键是 SwiftUI 布局的基于堆栈的方法:一切都有自然的顺序,因为我们将事物放置在 HStack
和 VStack
中,因此系统可以大致了解布局应该如何流动。相比之下,UIKit
和“自动布局”使我们可以将物品放置在任何地方,因此系统必须有效地猜测应该如何订购物品。
SwiftUI 还强烈建议我们在所有交互式控件中添加标签,明确说明所有内容。是的,我们可以隐藏这些标签,但是即使隐藏了这些标签,系统仍会将它们用作屏幕阅读器等的音频提示。
因此,SwiftUI 为我们免费提供了许多可访问性。但是,它仍然为我们提供了额外的工具来提供更好的体验:屏幕阅读器应如何阅读内容?是否需要阅读所有内容?如果用户不喜欢没有奇特的动画怎么办?
在本章集合中,我们将介绍这些更高级的功能,希望可以帮助您构建用户界面,无论用户的系统偏好如何,这些界面都可以为用户带来舒适的体验。