gpt4 book ai didi

android - 同时使用多语言和多主题

转载 作者:行者123 更新时间:2023-11-30 03:49:49 24 4
gpt4 key购买 nike

我正在成功开发一个具有多语言支持的应用程序(使用 /res/values-** 方式)。然后我想使用 Holo 和掉落的遗留设备(例如 2.3.*)来使用默认设备(使用 /res/values-v11 方式)。

所以,我最终得到了一个类似于这个的结构(没有语言的是 EN,默认情况下):

  • /资源/值(value)
  • /res/values-v11
  • /res/values-de
  • /res/values-de-v11
  • /res/values-es
  • /res/values-es-v11

...在每一个中我都有以下内容:

  • 字符串.xml
  • 主题.xml

... 其中 strings.xml 是定义本地化文本的地方,themes.xml 具有:

对于非 v11 目录(旧设备)

<?xml version="1.0" encoding="UTF-8"?>
<resources>
<style name="MyTheme" parent="@android:style/Theme">
<!-- Any customizations for your app running on pre-3.0 devices here -->
</style>
</resources>

对于 -v11 目录(+3.0 设备)

<?xml version="1.0" encoding="UTF-8"?>
<resources>
<style name="MyTheme" parent="@android:style/Theme.Holo">
<!-- Any customizations for your app running on devices with Theme.Holo here -->
</style>
</resources>

记得把这个属性添加到AndroidManifest.xml 的application 标签中

android:theme   ="@style/MyTheme"

这适用于所有语言和所有设备,当前和旧版,正确的主题选择和一切。在多个物理设备上进行了测试。

那么,问题:

您不认为这很容易维护吗?我的意思是,对于每种语言,我们都有 2 个完全相同的 string.xml 文件,但是对于每个新文本,我们都必须将其填充两次,从而增加了拼写错误的风险。如果您有 analytics.xmlstyles.xml ...,也会发生同样的情况

在 Android 中使用 strings.xml 可以很好地处理语言,是否有任何其他解决方法可以更好地处理多主题和多语言?

谢谢。

最佳答案

我不确定你为什么需要这样的东西

values-de-v11

我会用这样的东西:

values
values-de
values-fr
values-es
values-cat
...

并将翻译内容放入每个 strings.xml 文件中。另一方面,您还可以添加文件夹:

values
values-v11

在里面你可以添加你的主题。

文件夹值应该包含默认语言(通常是英语)的 strings.xml 和没有 holo 的设备的后备主题文件。

您可以检查文档中的所有可能性:

http://developer.android.com/guide/topics/resources/providing-resources.html#AlternativeResources

关于android - 同时使用多语言和多主题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14334498/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com