Normalement spinner peut obtenir un élément par setOnItemSelected mais que se passe-t-il si l'utilisateur n'a pas cliqué pour sélectionner du tout? Alors comment dois-je modifier le code pour détecter si l'utilisateur clique sur le spinner pour sélectionner l'élément ou non? Quelqu'un peut-il me conseiller s'il vous plaît?Comment détecter si un élément spinner est sélectionné ou non?
Voici mon code:
s = (Spinner) findViewById(R.id.Rg);
ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this,
R.array.gender_array, android.R.layout.simple_spinner_item);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
s.setAdapter(adapter);
s.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> adapterView, View view, int i, long l) {
gender = adapterView.getItemAtPosition(i).toString();
}
@Override
public void onNothingSelected(AdapterView<?> adapterView) {
Toast.makeText(Register.this, "Please select your gender", LENGTH_SHORT).show();
return;
}
});
Vous peut vérifier 'i' dans' onItemSelected' où i est la position sélectionnée ou vous pouvez également appeler 's.getSelectedItem()' –