测试项目中没有的资源

时间:2014-09-12 23:22:01

标签: android resources

我有一个Android测试项目。在资源文件夹中我有字符串和颜色,但没有资源可用。我看不到任何字符串或颜色。我没有运气就清理并重建了这个项目。

要访问我正在使用的资源:

String test = context.getResources(R.string.button_text);

在这种特殊情况下,button_text无法解析。

enter image description here

在字符串资源中我有四个字符串

 <string name="button_text">Install</string>
 <string name="button_run_unit_tests">Run All Tests</string>
 <string name="Quit">Quit</string>  
 <string name="IsolatedTest">Run Unit Test</string>

但我无法从我的Java资源文件中访问任何内容。我错过了什么?

这就是我所看到的(不确定它的引用): enter image description here

2 个答案:

答案 0 :(得分:1)

  

我错过了什么?

也许您错过了正确的R导入。根据您建议的替代品,您似乎正在从应用中导入R。您的字符串不在您的应用中。它们位于您的测试项目中,该项目具有不同的包名称。在测试项目的清单中找到package名称,然后尝试导入 R

请注意,我从未尝试过将资源放在测试项目中,因此虽然它们可以工作,但我无法确定。

答案 1 :(得分:0)

GetResources()会为您提供一个允许您访问资源的对象。要访问该资源,您需要执行get<Type>()(在您的情况下为getString)。所以你想做:

String test = context.getResources().getString(R.string.button_text);

另外,如果您在Activity中调用它,则不需要严格调用上下文(因为Activity是一个上下文,您可以直接执行getResources)。