风味项目中无法识别的字符串引用

String references unrecognized in flavor projects

我有一个项目有两种风格,"us" 和 "india",我遇到了印度风格无法识别布局文件中的字符串引用的问题。布局文件,可以说是 layout.xml,只有印度风格。然而,这两种风格都有 strings.xml,并且 layout.xml 引用了它自己的 strings.xml 中的几个字符串,这些字符串收到了一条错误消息,指出 "resources cannot be resolved"。尽管我将文本设置为字符串的所有地方 - android:text="@string/text" - 都是红色的并且我的预览不起作用,但我能够编译并 运行 项目。如果您查看 layout.xml,它看起来并不像预期的那样,但字符串引用有效。视图设置为背景的自定义布局是不可见的。知道如何解决这个问题吗?

进一步说明:最初我只有一个 manifest.xml 认为 manifest.xml 会在两种风格之间合并,并且在我在印度的 layout.xml 文件中我收到一个错误http://schemas.android.com/apk/res/android。然后我复制了印度风味的清单,冲突就消失了。重点是,我认为我必须做一些像这样奇怪的事情来解决这个问题。我已经尝试过清除、重建、文件 --> 使缓存无效重新启动...只需重新启动、重建、重置 Android Studio,重置我的整个计算机!

有人有什么建议吗?

我找到了解决方案,但是,这似乎与使用 flavors 的原因背道而驰。我也必须将 "india" 风格 strings.xml 中的字符串复制到我的 "us" 风格 strings.xml 中。我原以为这些字符串文件会合并,但事实并非如此。与我必须复制我的清单的方式类似,似乎 strings.xml 和自定义布局,即 drawable 文件夹中的按钮都需要复制,以便预览正常工作并且 Android Studio 不抱怨.

我希望这可以帮助其他人。干杯!