5

我们正在开发一个仅以德语本地化的应用程序,并希望为其添加辅助功能。由于accessibilityLabels 是德语,所以无论用户的默认系统语言是什么,总是用德语阅读它会很棒。

我注意到可以使用该accessibilityLanguage属性进行设置。但需要在每个控件上重复设置。

有没有办法为应用程序中的每个控件全局设置一次可访问性语言?

4

3 回答 3

6

在发布问题后不久就找到了一种方法!:)

可以accessibilityLanguage直接在UIApplication中设置AppDelegate。例如,在 中application:didFinishLaunchingWithOptions:

application.accessibilityLanguage = @"de";

它将应用于所有控件。在 iOS 7 上测试。

于 2014-01-22T13:18:22.883 回答
1

您可以通过继承来做到这一点,并使用您的自定义组件,默认情况下会以您想要的方式设置此值。但可能在现有项目中,它不会那么容易和快速应用。

于 2014-01-22T13:12:37.930 回答
1

您可以在头文件中的 NSObject 上创建一个类别,如下所示:

@implementation NSObject (Accessibility)

    - (NSString *)accessibilityLanguage {
        return @"de";
    }

@end

然后考虑将它导入到您的前缀标头(.pch 文件)中,这样您就不必在任何需要它的地方导入它

于 2014-01-22T13:17:30.803 回答