Android 访问xml定义的字符串数组

Android 访问xml定义的字符串数组,android,xml,resources,Android,Xml,Resources,我不擅长编写Android应用程序,我在使用getResources().getStringArray()时遇到问题 我在一个名为res.values.strings.xml的文件中从Eclipse(或手动)创建了一个字符串数组资源,如下所示: <?xml version="1.0" encoding="utf-8"?> <resources> <string-array name="BlueStartCommands"> <item&

我不擅长编写Android应用程序,我在使用
getResources().getStringArray()
时遇到问题

我在一个名为res.values.strings.xml的文件中从Eclipse(或手动)创建了一个
字符串数组
资源,如下所示:

<?xml version="1.0" encoding="utf-8"?>
<resources>
<string-array name="BlueStartCommands">     
    <item> NO_CMD</item>        
    <item> LOCK_CMD</item>
    <item> UNLOCK_CMD</item>
    <item> TRUNK_RELEASE_CMD</item>
    <item> PANIC_CMD</item>
    <item> REMOTE_START_CMD</item>
    <item> REQ_START_MONITOR_CMD</item>
    <item> REQ_PASSIVE_LOCK_SETTINGS_CMD</item>
    <item> REQ_STOP_MONITOR_CMD</item>
    <item> PING_CMD</item>             
</string-array>
<string-array name="CMD">
    <item>AAAAAA</item>
    <item>BBBBBB</item>
</string-array>
</resources>
但是,当我使用创建的代码
array string
cmd时,它可以工作!
这是为什么?

我认为问题在于,您试图在调用
onCreate()
之前检索数组(您正在全局声明中分配它)。
尝试
String[]cmd
在您现在声明它的类中,

cmd=getResources().getStringArray(R.array.cmd)在onCreate()函数中。

我认为问题在于,您试图在调用
onCreate()
之前检索数组(您正在全局声明中分配数组)。
尝试
String[]cmd
在您现在声明它的类中,

cmd=getResources().getStringArray(R.array.cmd)在onCreate()函数中。

我已经在res/values/arrays.xml中定义了我的数组,并通过以下方式访问它们:

CharSequence[] monthArray = getResources().getStringArray(R.array.Month);
List<CharSequence> monthArrayList = Arrays.asList(monthArray);
CharSequence[]monthArray=getResources().getStringArray(R.array.Month);
List monthArrayList=Arrays.asList(monthArray);

我已在res/values/arrays.xml中定义了我的数组,并通过以下方式访问它们:

CharSequence[] monthArray = getResources().getStringArray(R.array.Month);
List<CharSequence> monthArrayList = Arrays.asList(monthArray);
CharSequence[]monthArray=getResources().getStringArray(R.array.Month);
List monthArrayList=Arrays.asList(monthArray);

我们在应用程序android框架中使用的任何资源都会在R.java中创建对它们的静态引用。当您调用getresource(id)时,整串字符串.xml都会转换为对象。这与DOM不完全一样。所以呢?错在哪里?抱歉,我还不明白。你能发布你收到的错误消息吗?这就是Android的问题,事实上,到目前为止,我得到的都是崩溃…ofc我使用LogCat,但看到你的应用程序在每一小步都崩溃还是令人不安…grr。。。请参阅下面的正确修复!我们在应用程序android框架中使用的任何资源都会在R.java中创建对它们的静态引用。当您调用getresource(id)时,整个strings.xml都会转换为对象。这与DOM不完全一样。所以呢?错在哪里?抱歉,我还不明白。你能发布你收到的错误消息吗?这就是Android的问题,事实上,到目前为止,我得到的都是崩溃…ofc我使用LogCat,但看到你的应用程序在每一小步都崩溃还是令人不安…grr。。。请参阅下面的正确修复!非常感谢。成功了!愚蠢的noob错误,但是,它发生了…(哇,回复时间顺便说一下…)谢谢!成功了!愚蠢的noob错误,但是,它发生了…(哇,响应时间顺便说一下…)