Comment obtenir Ssortingng Array à partir du fichier arrays.xml

J’essaie juste d’afficher une liste à partir d’un tableau que j’ai dans mon arrays.xml . Lorsque j’essaie de l’exécuter dans l’émulateur, j’obtiens un message de fermeture forcée.

Si je définis le tableau dans le fichier java

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

ça marche, mais quand j’utilise

 Ssortingng[] testArray = getResources().getSsortingngArray(R.array.testArray); 

ça ne marche pas.

Voici mon fichier Java:

 package com.xtensivearts.episode.seven; import android.app.ListActivity; import android.os.Bundle; import android.widget.ArrayAdapter; public class Episode7 extends ListActivity { Ssortingng[] testArray = getResources().getSsortingngArray(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 adapter; /* Assign the name array to that adapter and also choose a simple layout for the list items */ adapter = new ArrayAdapter( this, android.R.layout.simple_list_item_1, testArray); // Assign the adapter to this ListActivity setListAdapter(adapter); } } 

Voici mon fichier arrays.xml

    first second third fourth fifth   

Vous ne pouvez pas initialiser votre champ testArray de cette façon, car les ressources de l’application ne sont toujours pas prêtes.

Changez simplement le code pour:

 package com.xtensivearts.episode.seven; import android.app.ListActivity; import android.os.Bundle; import android.widget.ArrayAdapter; public class Episode7 extends ListActivity { Ssortingng[] mTestArray; /** 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 adapter; mTestArray = getResources().getSsortingngArray(R.array.testArray); /* Assign the name array to that adapter and also choose a simple layout for the list items */ adapter = new ArrayAdapter( this, android.R.layout.simple_list_item_1, mTestArray); // Assign the adapter to this ListActivity setListAdapter(adapter); } } 

Votre tableau.xml n’est pas correct. changer pour aimer ça

Voici le fichier array.xml

    first second third fourth fifth   

Votre XML n’est pas tout à fait clair, mais les tableaux XML peuvent provoquer la fermeture de la force si vous en faites des nombres et / ou placez des espaces blancs dans leur définition.

Assurez-vous qu’ils sont définis comme No Leading ou Trailing Whitespace