Как добавить элементы в spinner динамически в android?

Как добавить элементы в динамический динамик в андроиде?

Ответы

Ответ 1

Spinner spinner = (Spinner)findViewById(R.id.mySpinner);
ArrayAdapter<String> spinnerAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, android.R.id.text1);
spinnerAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner.setAdapter(spinnerAdapter);
spinnerAdapter.add("value");
spinnerAdapter.notifyDataSetChanged();

приведенное выше в случае адаптера массива, я считаю, что вы знаете, как заполнять значения с помощью ArrayAdapter.

Как мы можем это сделать в случае SimpleCursorAdapter, т.е. если у нас есть 2 спиннера, и если мы выберем значения одного счетчика (который получает значение из SimpleCursorAdapter) в зависимости от некоторых критериев, то другой счетчик должен быть заполнен значениями, как мы можем достичь этого?

Ответ 2

Вызвав ArrayAdapter.add в адаптер Spinner ArrayAdapter.

Ответ 3

Вы можете следовать этому пути

public static void selectSpinnerItemByValue(Spinner spnr, long value){
SimpleCursorAdapter adapter = (SimpleCursorAdapter) spnr.getAdapter();
for (int position = 0; position < adapter.getCount(); position++)
{
    if(adapter.getItemId(position) == value)
    {
        spnr.setSelection(position);
        return;
    }
} }

Вы можете использовать приведенное выше:

selectSpinnerItemByValue(spinnerObject, desiredValue);

вы также можете выбрать по индексу непосредственно, как

spinnerObject.setSelection(index);