"在这里被翻译但在默认语言环境中找不到"strings.xml中的错误,带有translatable ="false"

PIX*_*IXP 71 xml android localization lint android-studio

这是我的values\strings.xml(默认文件),一切都是自我解释的: 在此输入图像描述

我的问题:

  1. 如果我正在编辑默认语言环境(values\strings.xml),它怎么能"在默认语言环境中找不到"?
  2. 如果我设置,它怎么会是一个lint翻译错误translatable="false"?在values-pl\strings.xml(和values-ru,values-iw文件夹中),字符串甚至不存在?反正它不应该.
  3. 我似乎无法理解为什么我没有得到俄罗斯字符串的错误.

(我会在这里显示值-ru\string.xml或values-pl\string.xml但是没有任何兴趣,因为无论如何都缺少字符串...)

小智 64

这也发生在我身上

我做了两件事:

  • 验证整个文件以查看未完成的另一个翻译(我在文件en中但在pt-br中有文件)
  • 清理,更新gradle并退出并重新启动Android Studio

  • 如果清理项目并无法重新启动Android Studio,请尝试运行“使缓存无效/重新启动”。 (13认同)
  • 只需清理项目并重新启动Android Studio。它有效;) (6认同)
  • ❗ 在执行此操作之前尝试删除该行并重新添加它。生命短暂。 (3认同)
  • 清理和使缓存无效/重新启动。也为我工作!:) (2认同)

Nol*_*Amy 53

重建可能需要很长时间。YMMV,但是...

只需删除有问题的行并重新添加即可。

为我工作。非常快。

  • 我不得不做的更少。我重命名了字符串,然后将其改回了。 (3认同)
  • 选择有问题的线ctrl-X,ctrl-V。做完了 为我工作! (2认同)

Gou*_*rav 20

就我而言,这对我有帮助:

  1. 选择导致错误的字符串。
  2. 剪下来
  3. 再次粘贴

如果它对您不起作用,请尝试将相同的字符串添加到strings.xml(v21)文件中。


小智 11

我通过以下步骤解决了这个问题:

  1. 清理我的项目

  2. 重建它

  3. 最后按文件菜单中的无效缓存/重新启动


Sta*_*wer 9

如果你只是这样Clean Project做,它可能会起作用。这对我有用。


小智 7

Invalidate Caches / Restart ...重新启动android studio。它为我工作。实际上,这是当我从另一台计算机复制文件并通过文件资源管理器粘贴时发生的。


小智 7

退出 Android Studio 并重新启动它为我解决了这个问题。


Cit*_*sO2 5

我有相同的错误消息,只是有一个奇怪的问题,即它被抛出到默认语言环境本身和所有翻译中。原来你不应该在你的名字中使用点(例如 name="bla.blub"),因为它会在内部转换为“bla_blub”,然后它不能与“bla.blub”匹配,因此出现错误。我只需要在默认语言环境中将点更改为下划线,然后其他翻译中的所有其他错误(包括名称中的点)也消失了。

但请注意,其他构建工具仍然会产生问题,因此请用下划线替换所有点!