2011-03-09 2 views
0

Dans android Puis-je avoir un Spinner avec quelques catégories et quelques sous-éléments ajoutés à eux. Par exemple, disons que je sélectionne un pays, puis des villes spécifiques sont sélectionnées pour la sélection.Problème dans Spinner Liste d'articles

S'il vous plaît aider moi

Répondre

2

Si vous avez deux filateurs, vous pouvez remplir un quand une sélection est faite dans l'autre. Un OnItemSelectedListener serait bon dans ce but. Quelque chose comme ce qui suit pourrait fonctionner, bien que je ne l'ai pas testé, il peut donc contenir des erreurs. Même si cela fonctionne, tout ne peut pas être fait de la meilleure façon possible.

final HashMap<String, ArrayList<String>> optionsForCategories; 
final Spinner categorySpinner; 
final spinner individualSpinner; 
final ArrayAdapter<String> individualSpinnerAdapter; 

... 

categorySpinner.setOnItemSelectedListener(new OnItemSelectedListener { 

    public void onItemSelected(AdapterView<?> parent, View view, 
      int position, long id) { 
     String selectedCategory = parent.getItemAtPosition(position); 
     individualSpinnerAdapter.clear(); 
     individualSpinnerAdapter.addAll(optionsForCategories.get(selectedCategory); 
    } 

    public void onNothingSelected(AdapterView<?> parent) { } 
}); 

Il serait parfaitement naturel et devrait avoir deux filateurs. Cependant, si vous n'en voulez qu'un seul (ce qui n'est pas clair, mais semble être implicite dans votre question), alors vous pourriez afficher une boîte de dialogue à partir du OnItemSelectedListener du spinner.

Questions connexes