当我的微调器访问第一个案例并立即重定向时,我遇到了问题。我如何使用:
@Override
public void onNothingSelected(AdapterView<?> view); {
// TODO Auto-generated method stub
}
在用户做出选择之前留在页面上的正确方法。下面是我的代码。
// Creating adapter for spinner & choosing Drop down layout style - list view
ArrayAdapter adapter = ArrayAdapter.createFromResource(this,R.array.event,android.R.layout.simple_spinner_dropdown_item);
// attaching data adapter to spinner
spinner.setAdapter(adapter);
//spinner needs to know who is responsible for handling events
spinner.setOnItemSelectedListener(this);
}
@Override
public void onItemSelected(AdapterView<?> adapterView, View view, int pos, long l) {
//casting the view to textView
TextView myText=(TextView) view;
// use .getText to display what text was selected by user
Toast.makeText(this,"You Selected "+myText.getText(),Toast.LENGTH_SHORT).show();
switch (pos) {
case (0):
//Case selection redirecting user to 'Training Table'
Intent a = new Intent(Calendar.this, TrainingTable.class);
Calendar.this.startActivity(a);
break;
case (1):
//Case selection redirecting user to 'Race Table'
Intent b = new Intent(Calendar.this, Races.class);
Calendar.this.startActivity(b);
break;
case (2):
//Case selection redirecting user to 'Workshops page'
Intent c = new Intent(Calendar.this, Workshops.class);
Calendar.this.startActivity(c);
break;
}
最佳答案
强制微调器选择一个项目:
spinner.setSelection(0);
然后设置监听器:
spinner.setOnItemSelectedListener(this);
这只需要在创建微调器时完成一次。通过这种方式,您可以避免对 OnItemSelectedListener
进行不必要的调用,默认调用一次。
关于Android 微调器,未选择任何内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25556371/