Android: créer un programme par programme à partir d’un tableau

Je suis tout nouveau sur Android et j’essaie de créer un spinner par programme et de l’alimenter avec des données provenant d’un tableau, mais Eclipse me donne un avertissement que je ne peux pas gérer.

Voici ce que j’ai eu:

Cette ArrayList contient les éléments qui doivent figurer dans le spinner (est rempli ultérieurement à partir d’un fichier):

ArrayList spinnerArray = new ArrayList();

C’est le code que j’ai trouvé sur un site qui devrait créer le spinner:

 Spinner spinner = new Spinner(this); ArrayAdapter spinnerArrayAdapter = new ArrayAdapter(this, android.R.layout.simple_spinner_dropdown_item, spinnerArray); spinner.setAdapter(spinnerArrayAdapter); 

Maintenant, la deuxième ligne (ArrayAdapter …) me donne un avertissement dans Eclipse en disant "ArrayAdapter is a raw type... References to generic type ArrayAdapter should be parameterized" , je n’ai aucune idée de la manière de résoudre ce problème (ou cela signifie en premier lieu :)).

C’est juste un avertissement et l’application semble fonctionner correctement, mais j’aimerais quand même comprendre ce qui ne va pas et y remédier. Tout indice est apprécié.

Salutations, Select0r

ArrayAdapter devrait fonctionner.

c’est à dire:

 Spinner spinner = new Spinner(this); ArrayAdapter spinnerArrayAdapter = new ArrayAdapter (this, android.R.layout.simple_spinner_item, spinnerArray); //selected item will look like a spinner set from XML spinnerArrayAdapter.setDropDownViewResource(android.R.layout .simple_spinner_dropdown_item); spinner.setAdapter(spinnerArrayAdapter); 

De même avec Array

 // Array of choices Ssortingng colors[] = {"Red","Blue","White","Yellow","Black", "Green","Purple","Orange","Grey"}; // Selection of the spinner Spinner spinner = (Spinner) findViewById(R.id.myspinner); // Application of the Array to the Spinner ArrayAdapter spinnerArrayAdapter = new ArrayAdapter(this, android.R.layout.simple_spinner_item, colors); spinnerArrayAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); // The drop down view spinner.setAdapter(spinnerArrayAdapter); 

Cela a fonctionné pour moi avec un tableau nommé ” shoes ” chargé à partir des ressources du projet:

  Spinner spinnerCountShoes = (Spinner)findViewById(R.id.spinner_countshoes); ArrayAdapter spinnerCountShoesArrayAdapter = new ArrayAdapter(this, android.R.layout.simple_spinner_dropdown_item, getResources().getSsortingngArray(R.array.shoes)); spinnerCountShoes.setAdapter(spinnerCountShoesArrayAdapter); 

Ceci est mon fichier de ressources ( res/values/arrays.xml ) avec le tableau de chaînes:

  < ?xml version="1.0" encoding="utf-8"?>   0 5 10 100 1000 10000   

Avec cette méthode, il est plus facile de le rendre multilingue (si nécessaire).

Cela a fonctionné pour moi

  Spinner spinner = new Spinner(this); ArrayAdapter spinnerArrayAdapter = new ArrayAdapter( this, android.R.layout.simple_spinner_item, spinnerArray); spinnerArrayAdapter.setDropDownViewResource( android.R.layout.simple_spinner_dropdown_item ); spinner = (Spinner) findViewById( R.id.spinner ); spinner.setAdapter(spinnerArrayAdapter); 

ce travail pour moi: –

 Ssortingng[] array = {"A", "B", "C"}; Ssortingng abc = ""; Spinner spinner = new Spinner(getContext()); ArrayAdapter spinnerArrayAdapter = new ArrayAdapter(getContext(), android.R.layout.simple_spinner_item, array); //selected item will look like a spinner set from XML spinnerArrayAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); spinner.setAdapter(spinnerArrayAdapter); 

J’utilise un fragment.