Как получить массив строк из массивов.XML-файл


Я просто пытаюсь отобразить список из массива, которые у меня есть в моем arrays.xml. Когда я пытаюсь запустить его в эмуляторе,я получаю сообщение force close.

если я определяю массив в файле java

String[] testArray = new String[] {"one","two","three","etc"};

это работает, но когда я использую

String[] testArray = getResources().getStringArray(R.array.testArray);

он не работает.

вот мой Java файл:

package com.xtensivearts.episode.seven;

import android.app.ListActivity;
import android.os.Bundle;
import android.widget.ArrayAdapter;

public class Episode7 extends ListActivity {
 String[] testArray = getResources().getStringArray(R.array.testArray);

 /** Called when the activity is first created. */
 @Override
 protected void onCreate(Bundle savedInstanceState) {

  super.onCreate(savedInstanceState);

  // Create an ArrayAdapter that will contain all list items
  ArrayAdapter<String> adapter;

  /* Assign the name array to that adapter and 
     also choose a simple layout for the list items */ 
  adapter = new ArrayAdapter<String>(
    this,
    android.R.layout.simple_list_item_1,
    testArray);

  // Assign the adapter to this ListActivity
  setListAdapter(adapter);
 }


}

вот мой arrays.xml file

<?xml version="1.0" encoding="utf-8"?>  
<resources>  
  <array name="testArray">  
    <item>first</item>  
    <item>second</item>  
    <item>third</item>  
    <item>fourth</item>  
    <item>fifth</item>  
  </array>
</resources>
3 94

3 ответа:

вы не можете инициализировать

Ваш массив.XML-это не правильно. измените его, как это

здесь массив.xml-файл

<?xml version="1.0" encoding="utf-8"?>  
<resources>  
    <string-array name="testArray">  
        <item>first</item>  
        <item>second</item>  
        <item>third</item>  
        <item>fourth</item>  
        <item>fifth</item>  
   </string-array>
</resources>

ваш XML не совсем ясен, но массивы XML могут вызвать принудительное закрытие, если вы сделаете их числами и/или поместите пробел в их определение.

убедитесь, что они определены как не ведущие или конечные пробелы