字符串资源多国语言版本的出错问题

"Description    Resource    Path    Location    Type
"your_string_name" is not translated in af, am, ar, be, bg, ca, cs, da, de, el, en-rGB, es, es-rUS, et, fa, fi, fr, hi, hr, hu, in, it, iw, ja, ko, lt, lv, ms, nb, nl, pl, pt, pt-rPT, ro, ru, sk, sl, sr, sv, sw, th, tl, tr, uk, vi, zh-rTW, zu    strings.xml    /projectname/res/values    line 44    Android Lint Problem

     如果你遇到类似上面的错误,那你要么想办法编制提示到的所有语言版本,一个不漏地将所有字符串资源翻译一遍,要么就看看调整项目属性项怎么解决。

    其实当这个错误发生时一般都会出现这个警告对话框,仔细看这个对话框的信息,不难发现,我们要检查preference页,可我也是初学,不太熟,找了好一会儿才找到。

    你右击左侧栏项目名称,在弹出菜单中选最后一项"Properties"打开。在下面页面中选择 “Android Lint Preference”,然后将 “MissingTranslation” 从 “fatal” 改为 “warning"或“warning"以下的选项。


    当然,在发布版本之前最好还是用胶严厉的选项检查一下比较好。

    另外,在“Lint warnings” 信息框里,会有更多类似下面的提示,可以让你更好的控制多国语言问题。


Issue: Checks for incomplete translations where not all strings are translated
Id: MissingTranslation

If an application has more than one locale, then all the strings declared in one language should also be translated in all other languages.

If the string should not be translated, you can add the attribute translatable="false" on the <string> element, or you can define all your non-translatable strings in a resource file called donottranslate.xml. Or, you can ignore the issue with a tools:ignore="MissingTranslation" attribute.

By default this detector allows regions of a language to just provide a subset of the strings and fall back to the standard language strings. You can require all regions to provide a full translation by setting the environment variable ANDROID_LINT_COMPLETE_REGIONS.
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值