Próbuję uzyskać pozycję (numer) pokrętła, gdy zostanie wybrana, aby użyć go w innym działaniu, które będzie wyświetlać inną mapę za każdym razem w zależności od wybranego elementu. kiedy uruchomię aplikację, zawiesza się. jest to pierwszy kod aktywny:Zdobądź pozycję przędzarki w Androidzie
public class TestProjectActivity extends Activity {
public Spinner spinner1;
public Integer number;
private Button valideButton;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
MySpinner();
valide_button();
}
public void MySpinner() {
final Spinner spinner1 = (Spinner) findViewById(R.id.spinner1);
ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(
this, R.array.num, android.R.layout.simple_spinner_item);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner1.setAdapter(adapter);
spinner1.setOnItemSelectedListener(new OnItemSelectedListener() {
public void onItemSelected(AdapterView<?> parentView,
View selectedItemView, int position, long id) {
// Object item = parentView.getItemAtPosition(position);
TestProjectActivity.this.number = spinner1
.getSelectedItemPosition() + 1;
}
public void onNothingSelected(AdapterView<?> arg0) {// do nothing
}
});
}
public void valide_button() {
valideButton = (Button) findViewById(R.id.valide_button);
valideButton.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
Intent intent = new Intent(TestProjectActivity.this,
MetroMapActivity.class);
startActivity(intent);
}
});
}
}
Już w kodzie, ale kiedy próbuję użyć "numeru" w innym działaniu, ulega awarii –
Spróbuj przenieść "numer" do klasy aplikacji. Zmienne aktywności są lepsze w utrzymaniu aktywności. Alternatywnie spróbuj ustawić numer jako statyczny element. przeczytaj tutaj: http://stackoverflow.com/q/4208886/602661 –
Briliant! Stworzyłem klasę aplikacji, która będzie przechowywać dane, które podzielę między dwie aktywności. Pozdrawiam człowieka. –