Согласно вашему комментарию, чтобы сохранить предыдущее состояние просмотра с помощью arraylist, вы можете использовать так:
если первый вид - позиция 1, второй - позиция 2 и т. д.
onClickNewDirectory() {
position = position + 1
Object object = new Object(position, directory, ...);
arraylist.add(object)
}
onbackToPreviousDirectory() {
//delete last element of position
arraylist.remove(arraylist.size() - 1);
position = position - 1
}