Вы теряете элементы списка, потому что поведение андроида по умолчанию при смене ориентации - уничтожить вашу деятельность и воссоздать ее. Это поведение выбрано для того, чтобы Android мог воссоздать занятие с новым макетом, который может использоваться специально для новой ориентации.
Чтобы предотвратить исчезновение элементов списка, необходимо выполнить несколько действий.
Первое, что помогает при смене ориентации, - это просто повторно использовать ту же активность после изменения. Это можно сделать, добавив эту строку
android:configChanges="keyboardHidden|orientation"
к тегу активности в манифесте, с которым у вас возникла проблема. Это объясняется более подробно в этом вопросе .
Поведение, которое вы объяснили, вероятно, также появится, если пользователь откроет действие, а затем отправит ваше приложение в фоновый режим, выполнит много других трудоемких операций с памятью, чтобы удалить ваше приложение из памяти, а затем повторно посетит ваше приложение.
В этом случае вы должны переписать метод onSaveInstanceState в своей деятельности.
Как это объясняется в этом вопросе .