I have a spinner that I want to change the available items based on the program state. I use the arrayadapter class like below
array = new ArrayAdapter(this, Android.Resource.Layout.SimpleSpinnerItem, Movements);
spnMove.Adapter = array;
Instead of creating a new ArrayAdapter for a new dataset, try just updating the data. First call the
clear() method on the adapter to delete all old data. Then call
addAll() on the ArrayAdapter to add the new data. Finally call
notifyDataSetChanged() to make sure the list is notified.