如何忽略 React Native 应用程序的“辅助功能”设置?

Vik*_*vic 0 accessibility react-native react-native-android react-native-ios

当我在 iOS 设置中激活“常规 -> 辅助功能”中的“粗体文本”时,一些文本会被裁剪,因为它们变得更大,从而超出了预期的显示区域。

此外,如果我放大“辅助功能 - > 大文本”中的所有文本,突然间,我的应用程序变得完全无法使用,因为所有内容都被向各个方向裁剪,文本占用了大量空间。

但是,当我启用这些设置并转到 TikTok、Wishbones 等应用程序时……我注意到它们似乎不受这些系统更改的影响。

现在没有时间设置所有内容以使我的应用程序响应这些设置,我想知道这些应用程序如何“忽略”这些设置?

Gra*_*hie 8

序言

我认为这是一个有效的问题,我欢迎像上面这样的问题,因为这部分是我进入可访问性的方式(试图解决可访问性错误而不是修复它),但下面的“咆哮”可能会解释为什么你得到了投反对票。

我还在标题为“正确使用 allowFontScaling = false;”的部分中解释了一种可以解决问题的方法 所以我希望这对你/其他人有帮助。

为什么你永远不应该按照 OP 的要求去做。

对于将来偶然发现此问题的任何人,请在执行上述操作之前阅读以下内容。

我知道最后期限就是最后期限,有时您需要将产品上线,如果上述纯粹是为了将您的最小可行产品作为短期修复推向市场,那么就去做吧,您必须对自己的目标和可访问性保持现实直到最后一秒才出现在你的雷达上,那么修复可能需要太长时间,但在第 2 阶段之前优先考虑。

但是,经验告诉我,如果你效仿TikTok这个故意压制残障用户视频的公司,你就选择了一个非常糟糕的榜样。(我无法评论 Wishbone,因为从未见过它)

现在不要介意排除人员和禁用他们可能需要使用您的应用程序的功能的道德原因,而是让我们谈谈数字和诉讼,看看我们是否无法说服您在开发预算中增加一些时间来解决这个问题。

市场规模

在全球范围内,至少有 22 亿人患有视力障碍或失明,其中至少有 10 亿人患有本可以预防或尚未解决的视力障碍。

资料来源:世界卫生组织(WHO)

全球有 78 亿人口,这意味着多达 28% 的用户群可能需要更大的文本才能清楚地看到您的应用程序。(世卫组织公布的数字很高,但我有什么资格与他们争论!)

如果您禁用字体缩放,则很可能您还没有考虑点击目标、图标、屏幕阅读器等的大小,因此您的应用程序可能对盲人或视力不佳的人以及准确度高的人完全没用问题(点击目标大小,通常受字体大小影响),例如患有帕金森氏病或脑瘫的人。

如果您希望应用程序增长,排除世界四分之一的人口似乎不是一个好主意,除非您当然正在构建下一个 TikTok 并拥有良好的营销预算来覆盖其他 75% 的人口。

如果是这种情况,那么请忽略可访问性,除非您所在国家/地区的法律让您陷入法律噩梦......

合法的

哦,这将是这样做的最大商业原因,大公司在美国受到诉讼的打击,他们的网站无法访问,应用程序也不会落后太多。

现在我不确定您来自哪个国家,但根据您居住的地方,您实际上可能会发现您的应用程序违反了法律。

我本人来自英国,虽然在这里提起诉讼的风险要低得多,但我知道至少有两起代表残疾人士提起的针对盲人无法访问网站的公司的诉讼。我们正在追随美国,我毫不怀疑其他人也会这样做。

哦,整个欧洲的立法正在进行中,称为“欧洲无障碍法案”,因此每个欧盟国家都将很快拥有相同的法律。

不仅仅是残疾人。

我在大约一米远的 43" 显示器上工作。现在,如果 Windows 决定停止字体缩放,我将不得不彻底更改我的设置,因为字体太小,我将无法阅读任何内容。

我没有视力障碍,但内置于 Windows、Web 浏览器、应用程序等中的辅助功能确实让我能够以自己想要的方式工作。

如果我在火车上,我经常打开辅助功能,使点击目标更大,这样我就可以在火车晃动时准确按下它们,更好地对比度(为了更好地看到来自太阳的眩光,所以我可以更好地看到屏幕)等。

尝试过新的“黑暗主题”了吗?黑暗主题是为那些在屏幕亮度和对比度感知方面有问题的人而设计的。看看你面前写的东西,打字机/键盘是为盲人发明的,我无法想象没有键盘的世界。

可访问性 = 为每个人提供更好的体验 = 更快乐的客户/用户 = 更好的评论和推荐 = 更多客户 = 更多利润 = 我们开发人员的更多开发工作 = 每个人都赢了。

正确使用 allowFontScaling = false;

allowFontScaling = false; 添加到您的工具带中是非常有用的东西。

正如 OP 发现的那样,当有人在其系统设置中更改字体大小时,有时布局不起作用。

显然,您应该设计布局以容纳更大的文本,但是如果从一开始就没有考虑过,这通常会破坏漂亮的设计。

教育您的设计团队需要时间,因此通常由我们作为开发人员来解决这些问题,直到公司政策发生变化(如果您指出法律影响,这很容易做到,当您提到数百万英镑的诉讼时,董事往往会醒来和更多的观众!)

相反,如果您遇到与 OP 相同的问题并且无法修复您的布局,您可以执行以下操作并仍然遵守WCAG 2.1并为您的用户提供他们可能需要的功能,以便他们舒适地使用您的应用程序/网站。

  1. 按照给出的答案中的建议禁用自动字体缩放。
  2. 将辅助功能设置部分添加到您的应用程序/网站。
  3. 添加一个选项来控制字体大小、字体粗细等。
  4. 如果字体大小/粗细被调整为不适用于您的“默认”布局的大小,请启用将适应此字体大小/粗细的辅助布局。在此辅助布局中允许高达 200% 的字体缩放(尝试在小屏幕上容纳如此大的字体实际上非常有趣 - 需要一些创造力!)

虽然辅助布局可能不那么好,但至少意味着如果人们需要更大的字体大小/更重的字体粗细,他们可以使用您的网站/应用程序。它增加了您的潜在客户群并帮助您遵守相关法律。

结论

立即将可访问性放在您的路线图

如果你在你的设计过程中加入,你就不必诉诸于糟糕的想法,比如禁用字体缩放、忽略可访问性错误等。它也可以为你在以后尝试对你的应用程序/网站进行逆向工程以适应人们需要的功能。

如果您像 OP 一样接近开发结束,请将其作为优先事项添加到您的开发计划中,以增加您的应用程序的潜在用户数量并避免法律问题。

/结束咆哮

我希望它可以帮助至少一个人看到可访问性的好处。

  • 哇!我没有意识到“可达性”的重要性!从法律的角度以及从用户体验的角度来看!我无法得到更好的答案!多谢!我要开始计划这个了! (2认同)