Вы делаете это с использованием любого подкласса BaseAdapter. Предполагая, что вы хотите загрузить данные из базы данных, вы используете SimpleCursorAdapter.
String[] from = new String[]{"nameOfColumn"}; //nameOfColumn is the name of the column in cursor to display in the spinner.
int[] to = new int[]{android.R.id.text1};
SimpleCursorAdapter cursorAdapter = new SimpleCursorAdapter (this, android.R.layout.simple_spinner_item, null, from, to, 0);
cursorAdapter.setDropDownViewResource (android.R.layout.simple_spinner_dropdown_item);
binding.paymentChannelSpinner.setAdapter (cursorAdapter);
binding.paymentChannelSpinner.setOnItemSelectedListener (new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected (AdapterView<?> adapterView, View view, int i, long l) {
if (i != -1) {
Cursor c = (Cursor) adapterView.getItemAtPosition (i);
}
}
@Override
public void onNothingSelected (AdapterView<?> adapterView) {
}
});
после получения данных как курсор из базы данных вы установите курсор к адаптеру, как это:
cursorAdapter.changeCursor(cursorFromDB);
Однако, если данные в массиве Java вы можете пользователь Arrayadapter
затем используйте адаптер, который принимает динамические данные. – pskink
@pskink Пожалуйста, приведите пример. –
'ArrayAdapter' например – pskink