根据Android文档,
public int getSelectedItemPosition()
自:API级别1 返回适配器数据集中当前所选项的位置 返回 int Position(从0开始),如果没有选择,则为INVALID_POSITION。
现在我想知道返回INVALID_POSITION的情况/情况,因为当初始化微调器时,默认位置设置为0.
Spinner spinner=(Spinner)findViewById(R.id.spinner1);
ArrayAdapter<String> adapterVehicleList = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, vehicleTypeList);
adapterVehicleList.setDropDownViewResource(android.R.layout.select_dialog_singlechoice);
spinner.setAdapter(adapterVehicleList);
spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
// TODO Auto-generated method stub
}
@Override
public void onNothingSelected(AdapterView<?> parent) {
// TODO Auto-generated method stub
}
});
int position =spinner.getSelectedItemPosition();
position =spinner.getSelectedItemPosition();
Toast.makeText(this,String.valueOf(position),Toast.LENGTH_LONG).show();code here
答案 0 :(得分:1)
我怀疑可能是在使用setSelection(int position)
选择元素且位置为负数或大于元素数时。
答案 1 :(得分:0)
我相信当你有一个空的微调器时你会得到的,因为在这种情况下什么都不能选。