Вы также получите второй звонок, если выбранный spinner'sItemPosition не равен нулю, когда экран повернут, так как Android устанавливает положение до того, что было до поворота. Используйте onSaveInstanceState, чтобы подсчитать количество прядильщиков в нулевой позиции и использовать этот счет, чтобы код OnItemSelected просто возвращался, пока счет не уменьшился до нуля.
Вы также должны быть очень осторожны с прядильщиками, которые могут иметь видимость View.GONE. Я добавлю еще немного текста, когда найду время, чтобы точно описать, как с ними справиться.
Активность воссоздается при повороте устройства. Вам нужно справиться с этим, чтобы не прекращаться. Прочтите раздел жизненного цикла активности из http://developer.android.com/guide/topics/fundamentals.html#actlife – Pentium10