how to add items to the spinner dynamically in android?
add("firstRow"); You don't actually need the getDropDownView, it just helps you if need to customise a little. Well then you have to create a custom adapter, you don't need to write android. R.
In the default state, a spinner shows its currently selected value. Touching the spinner displays a dropdown menu with all other available values, from which the user can select a new one. To populate the spinner with a list of choices, you then need to specify a SpinnerAdapter in your Activity or Fragment source code.
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();
the above is in case of the array adapter, I believe you know how to populate values with ArrayAdapter .
How can we do this in case of the SimpleCursorAdapter, i.e if we have 2 spinners and if we select the values of one spinner (that is getting the value from SimpleCursorAdapter) depending on some criteria the other spinner should be filled with values. how can we achieve that?
By calling ArrayAdapter.add
to the Spinner's ArrayAdapter.
You can follow this way
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;
}
} }
You can use the above like:
selectSpinnerItemByValue(spinnerObject, desiredValue);
you can also select by index directly like
spinnerObject.setSelection(index);
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With