在 iOS 设备中,可以在辅助功能设置中设置大文本。用户可以在这里指定不同的字体大小。我也想在我的应用程序中使用这个字体大小。在辅助功能计划指南中,我没有找到任何有关在我的应用程序中访问此字体大小的信息。它只提到标准的 Apple 应用程序邮件、通讯录、日历等正在使用它。有谁知道在开发应用程序时是否可以访问这些信息?
UIFont 的静态 -FontSize 方法在设置大文本功能时也不会返回不同的值。
(注意:不要与 iOS 7 的新动态类型混淆。这是辅助功能设置下的一个不同的旧选项。)
在 iOS 设备中,可以在辅助功能设置中设置大文本。用户可以在这里指定不同的字体大小。我也想在我的应用程序中使用这个字体大小。在辅助功能计划指南中,我没有找到任何有关在我的应用程序中访问此字体大小的信息。它只提到标准的 Apple 应用程序邮件、通讯录、日历等正在使用它。有谁知道在开发应用程序时是否可以访问这些信息?
UIFont 的静态 -FontSize 方法在设置大文本功能时也不会返回不同的值。
(注意:不要与 iOS 7 的新动态类型混淆。这是辅助功能设置下的一个不同的旧选项。)
使用记录在案的 API 无法访问它。
只是为了好玩:(不要在真正的应用程序中使用,它可能会让你被商店拒绝)
它存储在com.apple.Accessibility.plist
, 键下preferredFontSize
MobileNotes.app(可能还有其他人)使用该功能获取它
extern float _UIAccessibilityLargeTextFontSize(float);
(它是如此无证,他们确保以下划线开头。)
Accessibility
无法通过 iOS SDK 访问设置。在 iOS 7 中,您可以支持 Dynamic Type,它允许您通过调用 + 将任何字体设置为用户定义的大小的系统字体preferredFontWithTextStyle:
。
不幸的是你不能。
很可能是因为尚未实现自动布局,并且使用更大的字体会弄乱应用程序界面。如前所述,在 iOS7 中,您可以支持 Dynamic 类型。但是,如果您需要针对较低的 iOS 版本,如果可能的话,最好使用其他辅助功能。
据我所知,iOS4 及更高版本的系统提供了一种镜头来放大屏幕区域,它不仅仅是一个跳板功能,而是完全移植到应用程序中。还有帮助视障人士的高对比度功能。
对于那些使用无障碍 API 进行文本转语音的人,您可能会获得最大的帮助,它们在应用程序中运行良好,但不适用于自定义控制,因此您需要为这些组件实现临时行为。
您可以创建一种滑块来直接在应用程序内设置字体大小,例如 iBook 应用程序。
在我看来,最好的方法是保持一切整洁和简单,从设计过程到实现细节。例如:
我认为您不会在这里得到答案,因为 WWDC 内容受 NDA 保护。如果您有开发者帐户,您可以在这里查看https://developer.apple.com/library/prerelease/ios/releasenotes/General/iOS70APIDiffs/index.html并搜索 UIFont。这是第三个添加的方法。