【发布时间】:2017-01-30 13:53:42
【问题描述】:
Android Wear 系统只支持几种语言。有没有办法,如何强制资源管理器使用我在手机中设置但Android Wear系统不支持的语言资源?
示例
在我的 Android Wear 应用中,我希望支持三种语言。英语、德语和捷克语。在我的 Android Wear 应用程序中,我有这些带有字符串文件的目录:values、values-de、values-cs。
如果我将手机语言设置为德语,我的 Android Wear 应用程序会正确使用德语字符串。但如果我在手机中设置捷克语,Android Wear 应用程序使用默认(来自目录:values)字符串。
有什么办法,当我的手机有捷克语但Android Wear系统不支持捷克语时,我怎样才能让资源管理器使用values-cs文件夹?
提前谢谢你。
编辑
我做了非常丑陋的解决方法。我的手机应用程序中有与此穿戴应用程序相关的服务。当启动我的穿戴应用程序时,我只是问手机它使用什么语言。在它向我发送回复后,我只是尝试在我的 Xamarin Android Wear 应用中切换区域设置。
更改语言环境的代码:
myLocale = new Java.Util.Locale(lang);
DisplayMetrics dm = Resources.DisplayMetrics;
Configuration conf = Resources.Configuration;
conf.Locale = myLocale;
Resources.UpdateConfiguration(conf, dm);
其中 lang 是 ISO639-1 代码,myLocale 是 Locale 类型的活动属性。
【问题讨论】:
标签: localization wear-os