Android 中的国际化
我正在制作一个应用程序,我想在其中实现国际化。 我创建了替代资源,例如
res/values-fr/strings.xml 其中包含所有字符串的法文文本,包括标题
谁能告诉我下一步该做什么...
谢谢
I am making an app in which I want to implement internationalization.
I have created alternative resources like
res/values-fr/strings.xml
which Contains French text for all the strings, including title
Can anyone tell me what to do next...
thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您应该始终在
res/values/strings.xml
中保留默认字符串,因为 Android 会尝试使用最具体的可用资源。例如,如果您有res/values-fr/strings.xml
和res/values-de/strings.xml
并且用户手机设置为英语,您的应用将崩溃,因为de
和fr
均不适用于英语,因此没有后备资源。在指定默认字符串及其各自子文件夹中的任何翻译后,您可以通过其限定符使用这些字符串。例如
R.string.some_string
。然后,Android 将使用适用于用户当前设备语言的最合适的翻译。所有这些以及更多内容都在这里解释:使用资源进行本地化
You should always have default strings in
res/values/strings.xml
, because Android tries to use the most specific resource available. If you have for exampleres/values-fr/strings.xml
andres/values-de/strings.xml
and the users phone is set to English, your app will crash because neitherde
norfr
are applicable for English there are no fallback resources.After you have specified your default strings and any translations in their respective subfolders, you can use the strings by their qualifiers. For example
R.string.some_string
. Android will then use the most appropriate translation that is available for the users current device language.All that and more is explained here: Localizing with Resources
设备将根据系统语言自动加载区域设置。除非您想独立更改应用程序中的区域设置,否则不需要额外的步骤。
Device will load locale automatically based on system languge. No extra steps required unless you want to change locale in your app independently.