繁体   English   中英

android中的非本地化字符串

[英]Non-localized strings in android

如何避免(某些)我的字符串资源被本地化?

有时我需要多个相同的字符串。 例如,在定义首选项时,我需要在preferences.xml和我的java代码中使用首选项键以获取首选项值。 要么我可以手动定义键两次(我现在这样做),但我觉得我的键列表变得越来越大并且容易出错。

我也可以在我的strins.xml中定义密钥,但后来我担心它会被翻译(迟早(错误?))。 我担心这可能导致问题是使用不同的密钥多次存储相同的优先值。 如果用户更改语言并重置了所有设置,该怎么办?

有没有办法定义一个字符串 - 可以在代码和xml中访问 - 它们不会作为本地化过程的一部分进行翻译?

通常,如果仅在默认strings.xml中提供字符串,则它在所有语言环境中显示相同。 此外,您可以使用“可翻译”属性,该属性将告诉Lint此字符串不是为了翻译而设计的,并且将用于文档目的。

只需使用translatable=false 我建议将您的首选项键放在单独的资源文件中,因为它更容易管理。

<string name="Key" translatable="false">my key</string>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM