2

根据 Android 文档,

公共 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
4

2 回答 2

1

我怀疑这可能是当一个元素被选择使用setSelection(int position)并且位置为负数或大于元素数时。

于 2012-04-11T12:16:20.790 回答
0

我相信这就是当你有一个空的微调器时你会得到的,因为在这种情况下什么都不能选择。

于 2012-04-11T13:15:06.360 回答