我正在 Visual Studio 中构建一个 Android 应用程序。当我尝试构建应用程序引用资源文件夹中的项目时,我遇到了两个错误之一。
如果我在“Resource.Layout.[Id]”或“Resource.Id.[Id]”前面加上项目的命名空间,我会收到此错误:
命名空间“[app 命名空间]”中不存在类型或命名空间名称“Resource”(是否缺少程序集引用?)
如果我不在调用 Resource 之前加上我的命名空间,它会尝试访问默认的 Android.Resource 类,但我会收到此错误:
“Android.Resource.Layout”不包含“[axml 文件]”的定义
有没有人遇到过这个错误?我已经搜索了一段时间,但无法想出任何似乎错误的东西。 Resource.Designer 文件存在。我已经删除它并让它重新生成。 ID 在资源文件中,项目根本无法识别资源类。
最初,此应用程序的命名空间以“Android”结尾。认为这可能是问题的一部分,我已将其更改为“_Android”和“AndroidApp”,包括更改项目属性中的默认命名空间和更改每个文件中的命名空间声明。但是,此错误在每次更改时仍然存在。
原文由 rwakelan 发布,翻译遵循 CC BY-SA 4.0 许可协议
当您添加新文件并且 Visual Studio 将其设置为错误的构建操作时,可能会发生这种情况。我知道这在我身上发生过多次,我可能会花很长时间来弄清楚到底发生了什么。如果您右键单击该文件并看到生成操作。这应该设置为 Android 资源。希望能帮助到你