D'accord, comme je n'ai pas l'intégralité de votre base de code, j'ai mis quelque chose de simple ensemble pour reproduire ce que vous faites. Juste pour info, j'utilise ICS 4.1. Je n'ai pas rencontré les problèmes que vous rencontrez, donc peut-être que c'est un problème d'API. Peut-être que vous pouvez regarder ma base de code et voir s'il y a des différences entre celle-ci et la vôtre. C'est peut-être là que se trouve la solution.
XML:
Code:
public class ExampleActivity extends Activity implements OnItemSelectedListener {
private Button submitButton;
private TextView tv;
private Spinner spinner;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_example);
submitButton = (Button) findViewById(R.id.abrSubmit);
tv = (TextView) findViewById(R.id.abrMult);
spinner = (Spinner) findViewById(R.id.spinner1);
// create the data array for the spinner
String[] strings = { "Ceci", "Cela", "Autre" };
// create the spinner adapter
ArrayAdapter adapter = new ArrayAdapter(this,
android.R.layout.simple_spinner_item, strings);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
// set the adapter on the spinner
spinner.setAdapter(adapter);
// set the event listener for the spinner
spinner.setOnItemSelectedListener(this);
}
public void onItemSelected(AdapterView arg0, View arg1, int arg2,
long arg3) {
if (submitButton.getText().equals("Calculer")) {
submitButton.setText("Soumettre");
tv.setVisibility(View.GONE);
} else {
submitButton.setText("Calculer");
tv.setVisibility(View.VISIBLE);
}
}
public void onNothingSelected(AdapterView arg0) {
// TODO Auto-generated method stub
}
}
J'espère que ça vous aidera...