Bunu çözmenin zarif yollarından daha azını düşündüm, ama bir şeyleri kaçırmam gerektiğini biliyorum.
Benim onItemSelected
kullanıcı ile herhangi bir etkileşim olmadan derhal yangınlar ve bu istenmeyen bir davranıştır. Kullanıcı arayüzünün herhangi bir şey yapmadan önce kullanıcı bir şey seçmesini beklemesini diliyorum.
Hatta dinleyiciyi onResume()
yardımcı olacağını umarak , ama olmadı.
Kullanıcı kontrole dokunmadan önce bunun tetiklenmesini nasıl durdurabilirim?
public class CMSHome extends Activity {
private Spinner spinner;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
// Heres my spinner ///////////////////////////////////////////
spinner = (Spinner) findViewById(R.id.spinner);
ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(
this, R.array.pm_list, android.R.layout.simple_spinner_item);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner.setAdapter(adapter);
};
public void onResume() {
super.onResume();
spinner.setOnItemSelectedListener(new MyOnItemSelectedListener());
}
public class MyOnItemSelectedListener implements OnItemSelectedListener {
public void onItemSelected(AdapterView<?> parent,
View view, int pos, long id) {
Intent i = new Intent(CMSHome.this, ListProjects.class);
i.putExtra("bEmpID", parent.getItemAtPosition(pos).toString());
startActivity(i);
Toast.makeText(parent.getContext(), "The pm is " +
parent.getItemAtPosition(pos).toString(), Toast.LENGTH_LONG).show();
}
public void onNothingSelected(AdapterView parent) {
// Do nothing.
}
}
}
Spinner
boş yapmak ve içinde onItemSelected
String'in boş olup olmadığını tespit etmek olabilir startActivity
!