Java Android[string array]无法解析或不是字段

Java Android[string array]无法解析或不是字段,java,android,Java,Android,我收到一个关于无法解析字符串数组(位于strings.xml)的错误 我已经做到了互联网上说的一切: 重新启动的Eclipse 删除了gen文件夹中的我的R.java文件 我的values文件夹仍在res文件夹中,未移动 我的所有XML文件都没有错误 运行Project->Clean 我的类中没有导入安卓.R 检查了R.java类,它确实没有app\u categories属性(我的数组的名称) XML的相关部分: <string-array name="app_categories"&g

我收到一个关于无法解析字符串数组(位于
strings.xml
)的错误

我已经做到了互联网上说的一切:

  • 重新启动的Eclipse
  • 删除了
    gen
    文件夹中的我的R.java文件
  • 我的
    values
    文件夹仍在
    res
    文件夹中,未移动
  • 我的所有XML文件都没有错误
  • 运行
    Project->Clean
  • 我的类中没有导入安卓.R
  • 检查了
    R.java
    类,它确实没有
    app\u categories
    属性(我的数组的名称)
  • XML的相关部分:

    <string-array name="app_categories">
        <item >Cat 1</item>
        <item >Cat 2</item>
        <item >Cat 3</item>
        <item >Cat 4</item>
        <item >Cat 5</item>
        <item >Cat 6</item>
        <item >Cat 7</item>
        <item >Cat 8</item>
        <item >Cat 9</item>
    </string-array>
    
    我的所有其他字符串都可见。我定义了另一个数组,就像这个一样,而那个数组也不可见

    具体错误如下:

    app_categories cannot be resolved or is not a field [class_name].java   [path]  line 45 Java Problem
    

    不要将字符串数组放在strings.xml中,您必须创建一个名为arrays.xml的新文件并将它们放在那里。
    调用时需要的是R.arrays.myarray,而不是R.strings.myarray

    请尝试以下方法:


    不要使用
    R.string
    而使用
    R.array
    您将获得您的arraylist。

    清理项目后,尝试通过从命令行运行adb kill server和adb start server来重新启动adb服务器。

    解决方案可能是手动创建R:


    只需将鼠标悬停在问题所在的活动文件中的错误上,然后手动创建它,这将导致R生成您在字符串中创建的字符串数组。xml

    @Abu-Man,我希望这不起作用,因为它是xml,xml不应该关心不重要的空白。不,它不起作用。幸运的是,看在世界的份上,不幸的是,这会带来什么错误?你能粘贴它吗?检查“R”的导入,试着使用package.R。资源名称应该以R.array开头,而不是R.string。这就是我要发布的解决方案(你比我快了30秒)。这就是我设置阵列的方式,它对我来说很好。这帮助我认识到问题所在,但它本身并不是问题的解决方案。我正在调用
    R.string.app\u categories
    ,但我应该调用
    R.array.app\u categories
    +1对于该类型,资源文件的特定命名无关紧要。这是xml标签的作用。你是上帝!非常感谢。我以为模式是
    R.[u文件的单数\u\u名称\u其中的\u资源\u是].[resource\u名称]
    ,但显然不是。
    app_categories cannot be resolved or is not a field [class_name].java   [path]  line 45 Java Problem
    
     getResources().getString(R.array.app_categories_list);