【问题标题】:Remove a string in all the languages Android删除所有语言 Android 中的字符串
【发布时间】:2014-07-18 16:19:04
【问题描述】:

我有一个包含多个翻译的应用,我想删除一些字符串。

我怎样才能重构和删除它们,例如在默认的strings.xml 文件中只删除一次,并自动将删除传播到其他翻译的其他 strings.xml 文件?

【问题讨论】:

  • xml 文件是在构建时创建的。您不能在运行时更改它们。
  • 我想在编译前用eclipse删除字符串,因为我不再使用它,字符串已经死了
  • @DroidDev 他只是说在重构之后他不再需要一个字符串,所以他想立即从其他所有语言 xml 中删除它
  • 使用 Lint 识别死字符串并手动删除。
  • 我不明白反对票。问题很清楚,问题就存在。标签是这里唯一的问题。这不是 java 问题,是 adt/eclipse 或 Android Studio 问题。 @Addev 你能正确地重新标记它吗?

标签: android xml string android-resources


【解决方案1】:

您可以通过 Android Studio 中的“翻译编辑器”删除所有翻译。

  1. 选择字符串的键
  2. 点击“删除密钥”按钮
  3. 取消选中“删除”对话框中的所有复选框
  4. 在“删除”对话框中单击“确定”按钮

【讨论】:

  • 它是否也显示 个?我打开翻译编辑器时看不到它们
  • 它不支持复数,但我认为你可以在像 @string/singular_pattern item> @string/plural_pattern ...
【解决方案2】:
  1. CTRL-H
  2. 选择标签File Search
  3. 检查正则表达式
  4. 输入\R\s*<string name="string_name">(.|\R)*?</string>和 不要忘记将string_name 替换为实际的字符串名称。
  5. 文件名模式设置*.xml
  6. Replace...
  7. 将替换字段留空。
  8. Preview >
  9. 检查所有更换。
  10. 按“确定”应用更改

【讨论】:

    【解决方案3】:

    默认strings.xml文件并自动将删除传播到其他翻译的其他strings.xml文件

    ADT 不支持此操作。您需要自己从所有 XML 文件中删除文本,无论如何这不应该是一项艰巨的任务,因为它足以进行项目全局搜索(在 Eclipse CTRL-H 中),设置文件掩码为*.xml 并搜索您的字符串键。然后从找到的每个文件中删除此文件。

    【讨论】:

    • 不难,但非常麻烦。我刚刚在我的项目中删除了一个类,导致一百个未使用的字符串和可绘制对象。现在我必须通过30个语言文件和5个可绘制文件夹来一个一个删除它们!在任何方面都没有生产力。
    • 您可以编写脚本来自动执行此清理。它是易于解析的 XML - 从您的基本语言文件中删除无用的内容,然后让您的脚本重写其他语言以删除已消失的条目。
    • 这不再是正确答案。 Android Studio 现在可以处理了。请参阅 Dmitry Ognyov 的回答。
    • 截至 2014 年发布时,这仍然是正确答案。即使到 2018 年它仍然有效,但幸运的是还有其他更简单的方法。您似乎对过去 4 年发生的变化感到惊讶。
    • 这是一个过时的答案。没有人使用 adt了
    【解决方案4】:

    现在您可以使用Translations Editor 轻松完成。 要打开它,请单击xml 文件右上角的Open editor。 然后在编辑器中右键单击要删除的键并按Delete Keys(s)

    【讨论】:

      【解决方案5】:

      这是我删除不需要的语言的方式。

      1:制作项目.zip 的备份副本

      2:Go to Your project folder >app>src>main>res:

      在这个文件夹中,你会以文件夹的形式找到所有语言

      删除不需要的语言文件夹例如:values-ar-rSA

      回到 android studio 清理你的项目并测试

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-01-19
        • 2019-01-09
        • 1970-01-01
        • 2023-03-08
        • 1970-01-01
        • 2021-04-07
        • 2010-10-20
        • 1970-01-01
        相关资源
        最近更新 更多