我有一个更新 View ,在这里我需要预选存储在数据库中的Spinner值。

我当时有这样的想法,但是Adapter没有indexOf方法,所以我陷入了困境。

void setSpinner(String value)
{
    int pos = getSpinnerField().getAdapter().indexOf(value);
    getSpinnerField().setSelection(pos);
}

最佳答案

假设您的Spinner名为mSpinner,并且它包含以下选项之一:“some value”。

要查找和比较微调器中“某些值”的位置,请使用以下命令:

String compareValue = "some value";
ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, R.array.select_state, android.R.layout.simple_spinner_item);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
mSpinner.setAdapter(adapter);
if (compareValue != null) {
    int spinnerPosition = adapter.getPosition(compareValue);
    mSpinner.setSelection(spinnerPosition);
}

07-24 09:21